关于v-bind
axios运行报错
Create an Error with the specified message, config, error code, request and response.
check baseURL写错没,我是把请求路径也加上了。
const HTTP = axios.create({
baseURL: 'https://test.com/xxx/xxx' // 不能加'xxx/xxx'
headers: {
},
})
git 回退
git reset --soft HEAD~1 撤销最近一次的commit(撤销commit,不撤销git add)
git reset --mixed HEAD~1 撤销最近一次的commit(撤销commit,撤销git add)
git reset --hard HEAD~1 撤销最近一次的commit(撤销commit,撤销git add,工作区的代码改动将丢失。操作完成后回到上一次commit状态)
reduce
数组中对象的某个属性求和
// data=[{...,coverage}]
const totalCoverage:any = data.reduce(( prev: any, cur: any ) =>{
return prev + cur.coverage;
}, 0)
function groupBy(arr, group) {
return arr.reduce((prev, cur) => {
const key = group(cur);
if (prev.hasOwnProperty(key)) {
prev[key].push(cur);
} else {
prev[key] = [cur]
}
return prev;
}, {});
}
v-dbClick
git内容跟随分支切换
[master] git add .
[master] git commit -m 'feat: 保存一下'
[master] git checkout test
[test] git merge master
git stash
# 保存当前未commit的代码
git stash
# 保存当前未commit的代码并添加备注
git stash save "备注的内容"
# 列出stash的所有记录
git stash list
# 删除stash的所有记录
git stash clear
# 应用最近一次的stash
git stash apply
# 应用最近一次的stash,随后删除该记录
git stash pop
# 删除最近的一次stash
git stash drop
git reset --soft
回溯节点,为什么要保留修改内容?
应用场景1:有时候手滑不小心把不该提交的内容 commit 了,这时想改回来,只能再 commit 一次,又多一条“黑历史”。
应用场景2:规范些的团队,一般对于 commit 的内容要求职责明确,颗粒度要细,便于后续出现问题排查。本来属于两块不同功能的修改,一起 commit 上去,这种就属于不规范。这次恰好又手滑了,一次性 commit 上去。
撤销本地commit
git reset --soft HEAD^
git add .
git commit -m 'feat: 新commit msg'
撤销远程commit
git reset --soft HEAD^
git add .
git commit -m 'feat: 新commit msg'
git push origin -f
git cherry-pick
commit 都提交了,为什么还要复制新的出来?
应用场景1:有时候版本的一些优化需求开发到一半,可能其中某一个开发完的需求要临时上,或者某些原因导致待开发的需求卡住了已开发完成的需求上线。这时候就需要把 commit 抽出来,单独处理。
应用场景2:有时候开发分支中的代码记录被污染了,导致开发分支合到线上分支有问题,这时就需要拉一条干净的开发分支,再从旧的开发分支中,把 commit 复制到新分支。
[master]git cherry-pick 开发分支的commitHash
这时master代码就有了开发分支的commit了
git revert
应用场景:有一天测试突然跟你说,你开发上线的功能有问题,需要马上撤回,否则会影响到系统使用。这时可能会想到用 reset 回退,可是你看了看分支上最新的提交还有其他同事的代码,用 reset 会把这部分代码也撤回了。由于情况紧急,又想不到好方法,还是任性的使用 reset,然后再让同事把他的代码合一遍(同事听到想打人),于是你的技术形象在同事眼里一落千丈。
- revert 掉自己提交的 commit。
- 因为 revert 会生成一条新的提交记录,这时会让你编辑提交信息,编辑完后 :wq 保存退出就好了。
- 再来看下最新的 log,生成了一条 revert 记录,虽然自己之前的提交记录还是会保留着,但你修改的代码内容已经被撤回了。
git revert commitHash
encodeURIComponent和decodeURIComponent编码和解码
是js里面的函数
通用解码函数实现
// 递归,不知道编码了多少次
function decode(str) {
if(decodeURIComponent(str) === str) return str;
return decode(decodeURIComponent(str));
}
const url = 'https://blog.csdn.net';
const en2code = encodeURIComponent((encodeURIComponent(url)));
const en3code = encodeURIComponent(encodeURIComponent((encodeURIComponent(url))));
const en4code = encodeURIComponent(encodeURIComponent(encodeURIComponent((encodeURIComponent(url)))));
console.log(decode(en2code)); // https://blog.csdn.net
console.log(decode(en3code)); // https://blog.csdn.net
console.log(decode(en4code)); // https://blog.csdn.net
没有编码的字符等于解码后的字符?
即decodeURIComponent(str) === str,一般情况下不会出现问题,但是如果str字符串中含有特殊字符,就会导致解码函数报错。
所以在使用decodeURIComponent进行解码时,一定要先用encodeURIComponet编码
build报错 "el-table-column has no matching tag"
代码改动如下:
width=150 150要加引号
vue 模版prop绑定
em
它是相对于当前对象内文本的字体尺寸,若没有设置行内文本的字体尺寸,则使用浏览器默认字体尺寸,一般为16px。