手机浏览 RSS 2.0 订阅 膘叔的简单人生 , 腾讯云RDS购买 | 超便宜的Vultr , 注册 | 登陆
浏览模式: 标准 | 列表全部文章

ElementUI的form校验的number

 一般而言,elementUI的prop+rules可以用来对字段进行校验。大多数情况下感觉都没什么问题,毕竟官方的例子摆在那里。element-plus的例子没有的,element-ui2的例子也比较全。

但element-plus和elementui中都 没有对number类型进行介绍,如果直接{type:'number',....} 不管你填入什么值 ,都会报错,即使你用el-input+type="number",效果仍然一样
这是因为vue对所有的input默认都是当成string来解析的,因此你对一个string判断number,肯定就是失败的
网上80%的例子都是说采用:v-model.number="form.xxx" 来处理,确实,这样处理是OK的,但你会发现一个很严重的问题,那就是能输入的内容都是integer了。没法有小数点
 
这时候其实还是可以看element-plus所使用的async-validator的官方例子,因为黑夜的象{required:true},{type:"array"}等,都是来自于async-validator的官方支持,而官方是支持type="number"的。现在剩下的其实就是将el-input中的内容转为Number进行判断。仅此而已
 
官方的例子中有transform,这是一个钩子函数,用于验证前将数据进行简单的转换,比如我们就可以{type:"number",transform: Number},如果不能转成Number,其实也就失败了
 
---
临时写的,就先这样,后续有机会慢慢写的更详细一点,也或许就不再写了
参考:
1、https://github.com/yiminghe/async-validator
2、https://www.cnblogs.com/alabo1999/p/14990310.html (正好找到这一篇足够详细,估计我也不会再多写了)
 
 

小型 vue2项目快速升级到 Vue3的小踩坑

1、参考官方文档,将一些不用的 filters ,等去掉

2、将原来的全局变量挂载,尽量去掉,用的时候 再加载好了,现代 IDE 基本上都会在你用的时候 自动加载进来
3、如果不使用 compositionAPI,基本上就是原来的代码不变
4、layout 写在 router 里比写在页面里方便 (如果是基于 inertiaJS 的 laravel 项目,当我没说)
5、用了 vite 后,原来的 process.env,要使用 import.meta.env来获取,import.meta.env,只认 VITE_开头的变量
6、用 autoImport/unplugin 后确实方便很多,但如果用了 element-plus 又用了 tailwindcss,要注意引入的顺序,否则象 button 上的样式可能会被覆盖
 

记录:小米蓝牙遥控器如何连接

 搬家的时候,投影的遥控器找不到了。突然翻到一个小米盒子的遥控器,想着应该能用吧,却连接不上。google 了一下,原来只要按住:首页+菜单,20秒左右,听到设备嘟的响起就完事了。

连接上后确实方便了不少,原来只能用米家控制。。。没有反馈,老是误触

又开始有垃圾评论啦,看来 CF 已经被攻破了

 如题。经历了小半年的没有垃圾评论,如今又开始有了,看来CF 还是被攻破了

MAC下让 sudo 使用指纹而不是密码

确实每次在终端下输入 sudo 运行命令的时候要输密码很麻烦,因为有不少时候会在中文模式下。比如 npm run dev ,在 mac 下,低于1024的端口要启动,都是要带 sudo 才 OK。虽然大多数情况下,项目都是会带上 port,但有极少数情况下是不带的。

 
这时候 会运行 sudo npm run dev 。然后因为一些其他原因,比如在其他地方 sudo n ( 或 sudo nvm) 切换了版本,当前的项目可能就要重启,有时候 sudo !!的时候 会让再输入密码,但是这种情况下,不少时候 都是在中文模式下。于是就想着是不是可以偷懒,直接用指纹,多方便~~~
 
网上找了些资料,大多数都是说修改一下 /etc/pam.d/sudo 文件,在 auth sufficint 前加一个 pam_tid.so 即可,于是直接 sudo vim 这个文件,加入了:auth       sufficient     pam_tid.so
保存的时候 会提示你这是一个 readyOnly 的文件,得 :wq! 强制保存。
 
然后再在终端运行 sudo ,就会弹出指纹确认框啦 。当然如果你这时候 点取消,则还是需要输入密码,其实只是按顺序一个个验证罢了。
 
参考:
1、https://zhuanlan.zhihu.com/p/31529925
2、https://www.imore.com/how-use-sudo-your-mac-touch-id
3、https://apple.stackexchange.com/questions/411497/pam-tid-so-asks-for-password-instead-of-requesting-for-fingerprint-when-docked