
获得徽章 5
- 前端项目中在使用ESModules(import/export)引入commonjs(module.exports)导出的模块时,有时候会报错,需要修改引入方式解决,比如import qs from 'qs' 改为 import * as qs from 'qs';其实也可以通过修改tsconfig.json的方式解决,即配置compilerOptions.esModuleInterop为true。展开1点赞
- 重读vue3基础文档,发现开发中总是遗忘的小点:1. vue的计算属性支持setter。不用再为computed attr赋值失败头疼了。😯
2. style属性支持值为Object Array。也就是可以< :style="[obj1, obj2]">,vue会合并这两个对象。
3. v-for可以遍历对象。遍历结果与Object.keys()一致,我之前还用Object.entries()🤦♀️
4. 事件回调可以是多个方法。< @click="one($event), two($event)">
5. 可以直接在元素上使用scroll事件,配合passive使用更佳。< @scroll.passive="onScroll">
6. 多个复选框可以使用一个数组。codepen.io
展开赞过评论2 - nodejs不适用的三个场景:
1. 计算密集型程序。
因为nodejs单线程的特性,只能使用一个cpu核心,如果有个计算密集型程序要占用cpu200毫秒,那么事件循环中的代码都会延迟200毫秒执行。
不过一般真实场景不会将这样一个程序做成实时响应型的。比如抖音用户上传视频,视频转码、鉴黄都属于计算密集型的,所以会在用户上传之后,提示用户要等一会儿,等处理完再来提示用户。
2. 单用户多任务型应用
nodejs的异步机制可以处理多用户的并发请求,但是却无法对单用户的多任务线性执行有更好的表现,因为它无法利用很多的服务器资源,也没有锁。
3. 逻辑十分复杂的事务
有些现实中很复杂的场景,写成程序后,只能按部就班的一步步执行,而nodejs的异步机制显然不是线性的。
来自《nodejs开发指南》展开赞过评论1