代码是写给人看的,顺便给机器运行,多谢注释可以增加代码的可读性
/**
**************
* @func 教师端请假功能 ;
* @param {String} token 教师端头部的token;
* @param {string} a - 参数a;
* @param {number} b=1 - 参数b默认值为1;
* @param {string} c=1 - 参数c有两种支持的取值</br>1—表示x</br>2—表示xx;
* @param {object} d - 参数d为一个对象;
* @param {string} d.e - 参数d的e属性;
* @param {string} d.f - 参数d的f属性;
* @param {object[]} g - 参数g为一个对象数组;
* @param {string} g.h - 参数g数组中一项的h属性;
* @param {string} g.i - 参数g数组中一项的i属性;
* @param {string} [j] - 参数j是一个可选参数;
* @description 2018年4月19日被frank开发于dev_sprint65分支,
* XX年XX月被XX在xx分支修改(原因或者修改的功能);
****************/
1.标准变量命名使用驼峰式命名 eg. let thisIsMyName;
2.常量全部大写,并使用下划线连接 eg. const MAX_COUNT = 10;
变量声明尽量提在函数首部,用一个var声明,不允许出现连着的两个var声明(也包括let,const)
function doSomethingWithItems(items) {
// use one var
let value = 10,
result = value + 10,
i,
len;
for (i = 0, len = items.length; i < len; i++) {
result += 10;
}
}
undefind使用规范(永远不要直接使用undefined进行变量判断,使用typeof和字符串’undefined’对变量进行判断。)
// not good
if (person === undefined) {
...
}
// good
if (typeof person === 'undefined') {
...
}
用’===’和’!==’代替’==’, ‘!=’
使用对象的属性简写
const job = 'FrontEnd'
// bad
const item = {
job: job
}
// good
const item = {
job
}
使用拓展运算符 … 复制数组
// bad
const items = []
const itemsCopy = []
const len = items.length
let i
// bad
for (i = 0; i < len; i++) {
itemsCopy[i] = items[i]
}
// good
itemsCopy = [...items]
render使用
render: (h, params) => {
return h('div', [
h('span', {
attrs: {
class: "table_details"
},
on: {
click: () => {
this.edit(params.index)
}
}
},),
h('span', {
attrs: {
class: "table_continue"
},
on: {
click: () => {
this.show(params.index)
}
}
},),
h('span', {
attrs: {
class: "table_more no_border_right"
},
on: {
click: () => {
this.remove(params.row.id)
}
}
},),
h('Poptip', {
props: {
title:"项目变更",
content:"项目迁出",
placement:"bottom-end"
},
on: {
'on-ok': () => {
}
}
}, [
h('span', {
attrs: {
class: "table_more no_border_right"
}
})
])
])
}