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

世界网站流量排名手机广告策划方案

世界网站流量排名,手机广告策划方案,湖北省住房部城乡建设厅网站,简约 网站模板初学vue3时应该注意的几个问题 声明响应式 响应式数据的声明在vue2的时候很简单#xff0c;在data中声明就行了。但现在可以使用多个方式。 reactive用于声明Object, Array, Map, Set; ref用于声明String, Number, Boolean 使用reactive来声明基础数据类型#xff08;Str…初学vue3时应该注意的几个问题 声明响应式 响应式数据的声明在vue2的时候很简单在data中声明就行了。但现在可以使用多个方式。 reactive用于声明Object, Array, Map, Set; ref用于声明String, Number, Boolean 使用reactive来声明基础数据类型String, Number, Boolean将导致警告并且该值不会变为响应式。 script setup import { reactive } from vue;const count reactive(0); /script但是反过来使用ref来声明复杂数据类型Object, Array, Map, Set等是生效的因为ref内部对于复杂数据类型会调用reactive来声明。 解构reactive值 假设我们有一个带有计数器和增加计数器的按钮的响应式对象。 templateCounter: {{ state.count }}button clickaddIncrease/button /templatescript import { reactive } from vue; export default {setup() {const state reactive({ count: 0 });function add() {state.count;}return {state,add,};}, }; /script当使用es6进行解构时就会出问题。 templatedivCounter: {{ count }}/divbutton clickaddIncrease/button /templatescript import { reactive } from vue; export default {setup() {const state reactive({ count: 0 });function add() {state.count;}return {...state,add,};}, }; /script代码看起来是一样的根据我们之前的经验应该是没问题的但事实上Vue 的反应性跟踪是通过属性访问来工作的。这意味着我们无法分配或解构响应式对象因为与第一个引用的反应性连接丢失了。这是使用响应式的限制之一。 .value ref接受一个值并返回一个响应式对象。可以通过.value来访问对象。 const count ref(0)console.log(count) // { value: 0 } console.log(count.value) // 0count.value console.log(count.value) // 1refs 在模板中使用时会被解开不需要写.value. script setup import { ref } from vueconst count ref(0)function increment() {count.value } /scripttemplatebutton clickincrement{{ count }}!--不需要.value --/button /template不过要小心只有顶级属性才能通过.访问。下面的代码片段将产生[object Object] script setup import { ref } from vueconst object { foo: ref(1) }/scripttemplate{{ object.foo 1 }} // [object Object] /templateemit事件 在vue中子组件可以通过$emit来与父组件进行通信只需要添加一个自定义侦听器来侦听事件。 父组件 my-component my-eventdoSomething /子组件 this.$emit(my-event)现在emit事件需要使用defineEmits来声明。 script setup const emit defineEmits([my-event]) emit(my-event) /script另一件要记住的事情是defineEmits或者defineProps用于声明 props在script setup.都不需要导入。使用时它们会自动可用。 script setup const props defineProps({foo: String })const emit defineEmits([change, delete]) // setup code /script.native修饰符已被移除 声明附加选项 选项式 API 方法中的一些属性在script setup并不被支持 nameinheritAttrs插件或库所需的自定义选项 解决方案是在script setup RFC中定义的同一组件中使用 2 个不同的script标签。 scriptexport default {name: CustomName,inheritAttrs: false,customOptions: {}} /scriptscript setup// script setup logic /script定义异步组件 异步组件以前是通过将它们包含在函数中来声明的 const asyncModal () import(./Modal.vue)从 Vue 3 开始异步组件需要使用defineAsyncComponent方法显式定义。 import { defineAsyncComponent } from vueconst asyncModal defineAsyncComponent(() import(./Modal.vue))在模板中使用不必要的包装元素 Vue 2 中需要组件模板的单个根元素这有时会引入不必要的包装元素。 templatedivheader.../headermain.../mainfooter.../footer/div /template而vue3支持多个根元素 templateheader.../headermain v-bind$attrs.../mainfooter.../footer /template使用错误的生命周期事件 所有组件生命周期事件都通过添加on前缀或完全更改名称来重命名。
http://www.dnsts.com.cn/news/103371.html

相关文章:

  • 网站建设必备软件企业网站制作需要多少费用
  • 标准网站建设合同建个人网站赚钱多吗
  • wordpress 网站 图标乐成高端网站建设
  • 做网站图片代码怎么居中WordPress二维码动态图片
  • 防做网站视频网站建设流程教案
  • 怎么在vps上建网站wordpress模板左上角的logo换成自己的
  • 手机网站设计公司wordpress图片优化
  • 个人工商户做网站备案做的物流网站
  • 基层建设 网站响应式网站如何实现
  • 中山市城乡住房建设局网站企业文化建设的内容有哪些
  • wordpress更改注册优化网站seo方案
  • 临沂seo网站推广杭州建筑市场信用网
  • 工友洗手粉网站建设中西安做兼职网站设计
  • 网站空间费1年1200杭州网站改版公司电话
  • 星锐网站建设北京网站建设 shwl
  • 衡水电商网站建设网站如何做移动网站
  • 泉州seo网站管理青岛网站推广
  • 网站建设如何在宣传部备案带孩子做网站
  • 北京商城网站建设外贸推广优化公司
  • 建个网站的费用广州市公司网站建设报价
  • 室内装修设计师seo包年服务
  • 黑龙江省建设教育网站查询织梦网站修改使用教程
  • 甘肃兴华建设集团网站安卓5 wordpress
  • wdcp设置网站安全wordpress去版权信息
  • 生成flash的网站源码装饰公司简介内容
  • 荆门哪里做网站jquery前端框架教程
  • 搭建网站 优帮云神码ai智能写作网站
  • 网站代做多少钱湖南住房和城乡建设厅官网
  • 苍南网站制作注册公司100万实缴多少
  • 智鼎互联网站建设原平新闻热点头条