1、取值优化
我们现在的取值方法大部分伙伴们使用的是 . 用点去取值
吐槽:
这个只用了一半
改进:
ES6解构赋值给我们更优雅的取值方法:
getEms().then(({ data: { data: data }} = []) => {
this.options = data
this.search.items[1].options = data
})
补充:
解构赋值是很好用的,但是不能对undefined,null进行解构,这也会抛出异常的!
所以我们在解构的过程中可以加上一个默认值!
const { systemId } = row || {}
2、console.log()文明使用
吐槽:
这是啥?打印个寂寞!
改进:
无用的console.log(),升级正式环境的使用,需要删除掉,或者屏蔽,加上注释!
其实console远不止这一个方法,掌握好用的方法,能让我们再开发的过程中,事半功倍!
JavaScript Console 对象 菜鸟教程 (runoob.com)
3、ES6模板字符串优化使用
吐槽:
像我们这样用ES6字符串模板,还不如不用。这和用+直接拼接有什么区别?
改进:
不要忘记了,在ES6模板字符串内是可以使用JS的任何语法的,支持任何JS语句!
可以直接取数组里面的值,少两行代码还是很香的。
openDetail(row) {
const { systemId } = row || {}
const paramUrl = `?systemId=${systemId}`
const { model: { planDateList: planDateList }} = this.search
const paramsDate = `&planStart=${planDateList[0]}&planEnd=${planDateList[1]} `
window.open(`/web-zhwg-net-analyse/views/trusteeship-detail.html${paramUrl}${paramsDate}`)
}
吐槽:
有的用模板字符串,有的不用,没搞懂!全部改成模板字符串!
4、数组使用优化
吐槽:
可以省下两行代码,就可以必须要去省
改进:
planDateInit() {
const date = new Date().pattern('yyyy-MM-dd')
this.search.model.planDateList = [date, date]
}
吐槽:
写代码可以多想想,平时多看看JS常用类型的方法。
下面的典型例子,取数组对象里面的值,逗号拼接字符串
改进:
用数组的map和join方法,两行代码搞定
let staffNames = rows.map(({ staffName }) => { return staffName }).join(',')
let mobileNumbers = rows.map(({ mobileNumber }) => { return mobileNumber }).join(',')
5、Object使用优化
吐槽:
ES6的扩展运算符是不是忘了,不比assign香吗?😊
改进:
const param = queryFormData || this.search.model
const data = { ...param, page: pageNo, pageSize: pageSize }
6、KT.ajax方法使用优化
吐槽:
无须判断是否等于200,因为没有不是200根本过不来!
7、判空优化
吐槽:
等于空,取空。这样没有意义。
改进:
如果是要判空,可以使用ES6新出的空值合并操作符,如果左侧变量不为null、undefined,就取左侧数据,否则取操作符右侧变量数据
let planStart = ''
planStart = planStart ?? urlParam.planStart
吐槽:
人都判断麻了,是不是!小老弟。
这样也没有判断完全,还要判断是否为空字符串。
这人都判断傻了,以下:
改进:
使用空值合并操作符,就很简单了
if (networkLevelRow ?? '' !== '') {}
rows[0].sendGglValue ?? rows[0].sendGglStandardValue
8、关于CSS样式问题的优化
吐槽:
样式一般不用style直接写在DOM元素上面,用一个文件类型叫做CSS,所有样式放CSS文件中,这也也好维护,也好复用
9、vue常用指令,优化
吐槽:
这v-if压力也太大了,比有房贷车贷压力还要大,也不便于代码维护,而且明显可以复用。
改进:
把判断方法抽出来,不要写在DOM元素里面
10、后续
此外以上的整理内容有误的地方,欢迎在评论中指正,万分感谢。
读完有帮助,不妨关注一下,点个赞支持一下。