网站如果不续费会怎样,wordpress变身插件,下载应用商店app并安装到手机上,和凡科网类似的网站2024-8-9 打卡第十天 学习视频链接 js延迟加载
延迟加载#xff1a;等页面加载完成后再进行加载提高页面加载速度defer属性#xff0c;同步加载#xff0c;让脚本与文档同步解析#xff0c;顺序执行#xff0c;当文档解析完成再执行defer#xff0c;执行完再执行脚本等页面加载完成后再进行加载提高页面加载速度defer属性同步加载让脚本与文档同步解析顺序执行当文档解析完成再执行defer执行完再执行脚本不会阻塞页面渲染按顺序执行。async属性会使脚本异步加载不会阻塞页面解析过程加载完会立马执行js脚本这个时候如果文档还没有解析完成同样会阻塞多个async执行顺序不可预测。动态创建dom对文档的加载事件进行监听当文档加载完后再动态的创建script标签来引入js脚本setTimeout 延迟加载js脚本js最后加载 异步编程实现方式
回调函数回调地狱代码耦合度高不利于代码维护就是在一层理再调用一个接口接口里再调用接口就是回调地狱。Promise链式调用解决了地狱回调可能造成语意不够明确generator同步顺序书写函数控制权转移回来需要有自动执行函数的机制async其实是Promise和generator的语法糖自带一个执行器如果返回的是一个Promise对象会等待返回变成resolve因此可以将异步转为同步书写并且和这个函数可以自动执行 简单说说对pnpm的理解
本质还是一个包管理器跟npm和yarn相似更加完善。优势 包安装速度很快磁盘空间利用高效 怎么理解Promise
一个异步编程的解决方案一个对象可以获取异步操作的信息出现改善了异步编程的困境避免了回调地狱降低了代码的耦合性。接受一个函数作为参数返回Promise实例如果传入一个值会导致值穿透就是明明传入了数据但是输出的还是上一次的内容。一个容器包含某个未来才会结束的事件通常是一个异步操作的结果 三个状态pending进行中resolved已完成rejected已拒绝状态不可逆两个过程 pending-fulifilled就是Resolve 已完成pending-rejected就是Rejected 已拒绝特点 对象状态不受外界影响只有异步操作的结果可以决定状态其他操作无法改变。Promise是承诺的意思可以理解一旦状态确定就不能改变事件已经发生在添加回调函数还是能打印出结果但是普通函数事件发生后再监听就监听不到了缺点 无法取消一旦构造Promise函数会立即执行不设置回调函数得不到抛出的错误无法确定是什么状态 Vuex中的核心重要属性
state 单一状态树页面数据从该对象中获取。单一状态树包含了全部的应用层级状态作为唯一的数据源每个应用仅包含一个store实例单一状态树能直接定位特定的状态片段调试过程中获得当前应用状态的快照不可直接对state进行更改需要通过MutationVuex存储状态是响应式的从store实例中读取状态最简单的方法就是在计算属性中返回某个状态Getter 可以认为是store的计算属性对state加工衍生出来的数据就像computed计算属性一样getter会根据它依赖的值而缓存只有当他的依赖值发生改变才会被重新计算可以在多个组件中共享getter函数Mutation Vuex中store数据改变的唯一方法就是Mutation通俗理解mutation里面装着改变数据的方法集合处理数据逻辑的方法全放在mutation里使数据和视图分离action 类似mutation不同的是action提交的是mutation通过mutating改变state而不是直接操作action可以包含任何异步操作module 由于使用单一树所有对象会集中到一个较大的对象中当应用非常复杂的时候store对象就可能变得异常臃肿为了解决上述问题vuex允许将store分割成module每个模块拥有自己的state,getter,mutation,action甚至是嵌套子模型 什么是跨域怎么解决跨域
浏览器从一个域名的网页去请求另一个域名的资源时域名端口协议任一不同都是跨域 CORS跨资源共享W3C规范允许在服务器设置特定头频字段来允许跨域请求