11 2021 档案
摘要:Taro 默认对小程序的异步 API 进行了 promisify 化 https://taro-docs.jd.com/taro/docs/apis/about/env 小程序环境 Taro.getEnv()、Taro.ENV_TYPE(.QQ .WEAPP .WEB) ! 消息机制
阅读全文
摘要:路由 https://taro-docs.jd.com/taro/docs/router // 传入参数 id=2&type=test Taro.navigateTo({ url: '/pages/page/path/name?id=2&type=test' }) Taro.getCurrentIn
阅读全文
摘要:浏览器的本地存储主要分为Cookie、WebStorage和IndexDB, 其中WebStorage又可以分为localStorage和sessionStorage。 共同点: 都是保存在浏览器端、且同源的 不同点: cookie数据始终在同源的http请求中携带(即使不需要),即cookie在浏
阅读全文
摘要:1. 浏览器缓存 2. 防抖、节流 3. 资源懒加载、预加载 4.开启Nginx gzip压缩 三个方面来说明前端性能优化 一: webapck优化与开启gzip压缩 1.babel-loader用 include 或 exclude 来帮我们避免不必要的转译,不转译node_moudules中的j
阅读全文
摘要:1. <el-input v-model.trim="xxData.num" @input="xxData.num = xxData.num.replace(/[^\d]/g, '')"></el-input> 2. 用表单的自定义校验 // js let checkNum = (rule, val
阅读全文
摘要:配置文件vite.config.js中 vite的server文档 export default defineConfig({ plugins: [vue()], // ... server:{ host: '0.0.0.0' } }) 将此设置为 0.0.0.0 或者 true 将监听所有地址,包
阅读全文
摘要://路由跳转 router.push import { useRouter } from 'vue-router' setup(){ const router = useRouter() // 通过router.currentRoute.value里的参数获取 console.log(router.
阅读全文
摘要:先事件捕获阶段 (可拦截事件) (根节点【浏览器一般是window】先收到事件) -> 到达目标节点 ->冒泡阶段 (事件反向传播) 事件类别 https://developer.mozilla.org/zh-CN/docs/Web/Events 点击事件、焦点事件、鼠标事件、键盘事件、WebSoc
阅读全文
摘要:对小程序进行分包,可以优化小程序首次启动的下载时间,以及在多团队共同开发时可以更好的解耦协作。可以多个分包。 目前小程序分包大小限制: 整个小程序所有分包大小不超过 20M 单个分包/主包大小不能超过 2M 具体使用方法请参考: 使用分包 开发者通过在 app.json subpackages 字段
阅读全文
摘要:安装: npm install -g nrm 可用镜像源 nrm ls 使用源 nrm use [reg] 注意项目中.npmrc的配置,.npmrc 中优先
阅读全文
摘要:1.GET在浏览器回退不会再次请求,POST会再次提交请求2.GET请求会被浏览器主动缓存,POST不会,要手动设置3.GET请求参数会被完整保留在浏览器历史记录里,POST中的参数不会4.GET请求在URL中传送的参数是有长度限制的,而POST没有限制5.GET参数通过URL传递,POST放在Re
阅读全文
摘要:HTTP1.0定义了三种请求方法: GET, POST 和 HEAD方法 HTTP1.1新增了五种请求方法:OPTIONS, PUT, DELETE, TRACE 和 CONNECT HEAD 请求资源的头部信息, 并且这些头部与 HTTP GET 方法请求时返回的一致. 该请求方法的一个使用场景是
阅读全文
摘要:三个方面: 网络篇: 构建请求 查找强缓存 DNS解析 建立TCP连接(三次握手) 发送HTTP请求(网络请求后网络响应) 浏览器解析篇: 解析html构建DOM树 解析css构建CSS树、样式计算 生成布局树(Layout Tree) 浏览器渲染篇: 建立图层树(Layer Tree) 生成绘制列
阅读全文
摘要:编码阶段尽量减少data中的数据,data中的数据都会增加getter和setter,会收集对应的watcherv-if和v-for不能连用如果需要使用v-for给每项元素绑定事件时使用事件代理SPA 页面采用keep-alive缓存组件在更多的情况下,使用v-if替代v-showkey保证唯一使用
阅读全文
摘要:当一个Vue实例创建时,Vue会遍历data选项的属性,用 Object.defineProperty 将它们转为 getter/setter并且在内部追踪相关依赖,在属性被访问和修改时通知变化。 每个组件实例都有相应的 watcher 程序实例,它会在组件渲染的过程中把属性记录为依赖,之后当依赖项
阅读全文
摘要:key的作用主要是为了更高效的对比虚拟DOM中每个节点是否是相同节点; Vue在patch过程中判断两个节点是否是相同节点,key是一个必要条件,渲染一组列表时,key往往是唯一标识,所以如果不定义key的话,Vue只能认为比较的两个节点是同一个,哪怕它们实际上不是,这导致了频繁更新元素,使得整个p
阅读全文
摘要:JS是单线程的,为了防止一个函数执行时间过长阻塞后面的代码, 所以会先将同步代码压入执行栈中,依次执行,将异步代码推入异步队列, 异步队列又分为宏任务队列和微任务队列,因为宏任务队列的执行时间较长,所以微任务队列要优先于宏任务队列。 微任务队列的代表就是,Promise.then、MutationO
阅读全文
摘要:事件冒泡 (向上寻找事件方法执行) 指在在一个对象上触发某类事件,如果此对象绑定了事件,就会触发事件,如果没有,就会向这个对象的父级对象传播,最终父级对象触发了事件。 事件委托 (由父节点的监听函数统一处理多个子元素的事件) 本质上是利用了浏览器事件冒泡的机制。 因为事件在冒泡过程中会上传到父节点,
阅读全文
摘要:ajax是一种异步通信的方法,从服务端获取数据,达到局部刷新页面的效果 创建XMLHttpRequest对象; 调用open方法传入三个参数 请求方式(GET/POST)、url、同步异步(true/false); 监听onreadystatechange事件,当readystate等于4时返回re
阅读全文

浙公网安备 33010602011771号