今天学到了~~~
作者:互联网
每日更新, 无论学到了什么, 那怕一句话, 也是成长!!!
不积跬步无以至千里,不积小流无以成江海
2022 - 07 - 14
技术:
- pinia中如果想要给一个state中的数据修改成 只读模式, 直接使用 vue3 的 readonly方法修改后,赋值是不会生效的, 需要给readonly 修改的数据 解构后再 赋值才可以
import {readonly} from 'vue'
........
state: {
readonlyData: {}
}
actions: {
setReadonlyData: () => {
this.readonlyData = readonly({
a: '1',
b: 'b'
c: 'c'
}) // 这样是赋值失败的
this.readonlyData = {
...readonly({
a: '1',
b: 'b'
c: 'c'
})
}
}
}
原因: ??? 待补充
- 命名规则, 是为了让别人快速定位变量含义。
好的命名规则,遵循以下几点规范
- 参考官方文档的命名规范
- 方法 使用 动词 + 名词 的形式命名
- 标识 使用 is + 形容词
- 具体事物 使用 形容词(可选) + 名词
- css 能用class 不用style. 拒绝使用 !important, 实在要用,一定要确认项目中不会影响别人
- vant 里的 radio组件,当选项的 name为 boolean 类型时, 选择false,field 组件的rule使用 required:true , 会校验为 未选择。
原因:官方文档中虽然提到 filed 使用required 属性 的校验为
但是 源码中的 isEmptyValue的 校验为
// 出自 vant@3.5.0 依赖中的 node_modules/vant/lib/field/utils Line:32
function isEmptyValue(value) {
if (Array.isArray(value)) {
return !value.length;
}
if (value === 0) {
return false;
}
return !value;
}
针对这个问题, 我给vant 提了一个mr。不知道会不会采纳, 蹲一个 官方回复,[mr地址] (https://github.com/youzan/vant/pull/10821/files)
第一次提交mr 还有点紧张呢。但是还是很有成就感的。哈哈哈哈
- 使用别人的组件 ,需要先熟悉别人组件的api。对于二次封装的组件, 依旧如此。尽量避免私有化 组件!!!!这不是团队开发的好现象!
生活:
- 交朋友,要做到: 热情!坦然!谦虚!大方!
- 头脑灵活,重要;但是努力,更重要。坚持,最重要!
- 判断/校验/学习任何事情,要做三遍以上,才能得出较为正确的答案!
标签:学到,vant,校验,value,readonly,今天,使用,组件 来源: https://www.cnblogs.com/zhaha-blog/p/16479882.html