当前位置: 首页 > news >正文

网站开发接口哪里有免费永久的云服务器

网站开发接口,哪里有免费永久的云服务器,天河区发布,龙采网站建设资源分享平台如果阅读有疑问的话#xff0c;欢迎评论或私信#xff01;#xff01; 本人会很热心的阐述自己的想法#xff01;谢谢#xff01;#xff01;#xff01; 文章目录 响应式基础声明响应式状态(属性)响应式代理 vs 原始值声明方法深层响应性DOM 更新时机有状态方法 响应式… 如果阅读有疑问的话欢迎评论或私信 本人会很热心的阐述自己的想法谢谢 文章目录 响应式基础声明响应式状态(属性)响应式代理 vs 原始值声明方法深层响应性DOM 更新时机有状态方法 响应式基础 在认识vue之前就可能许多人听说vue的响应式系统的诱人之处。 声明响应式状态(属性) 在vue中可以通过data选项声明一些带有响应式的数据。data选项中需要return出一个对象包含你所要在该页面添加的所有响应式数据。Vue会在创建当前实例时对你返回的对象使用响应式系统包装。并且这些数据可以在当前实例中使用this找到并进行修改。例如 templateimg :[orderSrc]imgSrc / /templatescript export default {data() {var imgSrc /src/components/icons/newImg.gif;var orderSrc src;return {imgSrc,orderSrc,};},mounted(){console.log(this.imgSrc) //控制台输出‘/src/components/icons/newImg.gif’} }; /script在vue响应式系统中vue会在首次创建实例时对data数据进行响应式包装所以如果你要响应式的数据那么需要确保已经在data中声明。至于里面的值可以是null或undefined这些占位符。 data中命名规范vue中由于内置API使用了$作为前缀并且也为内部属性保留了_前缀所以我们在data中声明数据时要避免使用这些前缀防止与内置属性冲突。 响应式代理 vs 原始值 在vue3中vue使用的是JavaScript中的Proxy代理来实现响应式的。我们先来看一段vue2中的代码 scriptexport default{data(){var obj {id:1}return {obj}},mounted(){const newObj {}this.obj newObj;console.log(this.obj) //{__ob__: Observer}console.log(newObj) //{__ob__: Observer}console.log(this.obj newObj) //true}} /script接下来再看一下vue3中的效果 scriptexport default{data(){var obj {id:1}return {obj}},mounted(){const newObj {}this.obj newObj;console.log(this.obj) //Proxy {}console.log(newObj) //{}console.log(this.obj newObj) //false}} /scriptvue3中与vue2不同的是在vue2中newObj是响应式数据。而在vue3中该数据在mouted中定义的newObj就不再是响应式数据。所以请确保在其他地方使用this访问响应式状态 声明方法 在vue中所有的方法都应该生声明在methods对象中因为只有在methods对象中的this才会指向当前组件实例。所以为了我们的this可以正常指向所有的方法都应该声明在methods对象中。而且不应该在methods对象中使用ES6中的箭头函数关于this的更多信息可以点击该链接查询。请注意这里methods与data和mounted不同的是methods是一个对象而不是一个方法 我们先来看一下正常的this里面包括什么 script export default {data() {var objAttr {id: 123,class: a,};return {objAttr};},methods:{init(){console.log(this) //Proxy {init: ƒ, …}console.log(this.objAttr) //Proxy {id: 123, class: a}console.log(this.objAttr.id) //123}},mounted(){this.init();} }; /script 接下来试一下在箭头函数中的this指向是什么 script export default {data() {var objAttr {id: 123,class: a,};return {objAttr};},methods:{init:(){console.log(this) //undefined}},mounted(){this.init();} }; /script所以尽量不要在methods中使用箭头函数 深层响应性 vue中的响应式是进行深度处理过的所以不管某个属性位于哪个对象只要在data中进行声明都可以被响应式处理。 DOM 更新时机 在学习这一节时我们需要知道JavaScript中的异步处理机制以及ES7中的async语法之后再来深入的理解。这里简单的说一下JavaScript中异步有事件循环和任务队列事件循环通常称为宏任务任务队列通常称为微任务。我们使用setTimeout来解释这两个名词。来看下面这个代码 setTimeout1(setTimeout2(); ,1000)setTimeout3(setTimeout4(); ,1000)这里setTimeout1和setTimeout3位于事件循环中而setTimeout2是和1处在同一个任务队列中3和4处在同一个任务队列中。 如果可以理解上面这个概念的话就可以继续学习vue中的DOM更新时机了 vue中会把每次更新时机设置为一个事件循环所以我们在需要等待DOM更新之后再进行操作的时候可以使用vue中的nextTick函数它会等待当前事件循环结束之后再执行接下来的任务。例如vue官方文档这串代码 import { nextTick } from vueexport default {methods: {async increment() {this.countawait nextTick() // await中文指等待也就是在上面事件循环结束之后再执行nextTick// 现在 DOM 已经更新了}} }有状态方法 有时候我们想要创建一个动态的方法多次复用但是同时我们vue组件也需要被重用。这个时候就会引起一些问题我们创建的这个方法内部是有一个自己的状态比如自己的属性自己的方法名。如果这些被重用那么在执行代码的时候会产生不同结果。 比如这个方法中有一个名为timer的定时器那么我们在进行复用的时候这个timer可能会有多个之后我们再想销毁timer时我们不知道哪一个需要被销毁。 vue官方文档中也为我们提供了一种解决方法在created函数也就是实例创建的时候将有状态的方法复制在自己的实例中并且在实例销毁时(unmounted)删除该方法。
http://www.eeditor.cn/news/119345/

相关文章:

  • 常宁市城市建设规划管理局网站温州网站排名优化公司
  • 网站建设礻金手指下拉十一srm采购管理系统
  • 网站项目中的工作流程网站用社交图标做链接侵权吗
  • 创新的商城网站建设长沙做网站建设
  • 万博法务网站asp+sql server典型网站建设案例(源码)3
  • 宁波网站推广软件服务成都建设局官方网站
  • 网站开发成本如何账务处理怎样建设数字中国
  • 怎么知道自己的网站被k网站策划建站
  • 厦门网站制作公司推荐京东小程序入口
  • 建设校园网站个人直播网站开发
  • 网站导航结构建网页还是网站
  • 公司网站模板设计百度统计网站速度诊断工具
  • 中山市住房建设局网站海南手机网站建设
  • 企业网站推广注意事项海外网站加速器免费
  • 专门做汽车内饰的网站沈阳无痛人流
  • 帝国cms网站地图xmlwordpress 广告联盟
  • 网站模板大小国际网站浏览器
  • 深圳比较好的设计网站公司吗wordpress多站点搭建
  • 网站文章快速被收录柒比贰Wordpress
  • 建设一个好的网站山东网站建设和游戏开发的公司
  • 如何找到网站管理员动漫制作专业有哪些课程
  • 网站搭建平台demo免费临安做网站的公司有哪些
  • wordpress优化检测优就业seo课程学多久
  • 网站建设浩森宇特网站产品标题怎么写
  • 厦门做网站优化多少钱论某网站职能建设
  • 沈阳网站营销推广100个无水印短视频素材免费
  • php 公司网站网站开发项目需求方案
  • 湖南好搜网站建设wordpress定义一个变量
  • 网站seo关键词排名查询网络营销专业分析
  • 想做一个什么样的网站wordpress 插件play