vue的options是什么属性,vue3 @options

  vue的options是什么属性,vue3 @options

  Options是newVue的一个参数,我们一般称之为options或者构造选项。下面这篇文章主要介绍Vue中关于选项的相关信息,通过示例代码非常详细的介绍。有需要的朋友可以参考一下。

  

目录

   vue中的选项,选项的五类属性,入门属性,用Vue文件添加组件,计算的(计算的属性)使用情况缓存示例:手表使用情况有什么变化?什么是深刻的:真实的?计算的和监视计算的计算属性之间的差异监视侦听器摘要

  

Vue中的options选项

  

options的五类属性

  Data: data,props,propsdata,computed,methods,watchDON: el,template,render,rebderError生命周期钩子函数:beforeCreate,created,beforeMount,mounted,beforeUpdate,updated,activated,deactivated,beforeDestroy,Destroy,erroCaptured .资源:指令、过滤器、组件组合:父、mxins、扩展、提供、注入

  

入门属性

  El(挂在点上)新Vue({

  埃尔: #app

  模板:/div我是小明/div `。

  })

  您可以使用$mount来代替。

  新Vue({

  模板:/div我是小明/div `。

  }).$ mount(“# app”)

  数据(内部数据)支持对象和函数,优先级函数将由Vue监控,由Vue实例表示。每次读取或写入数据时,Vue都会对其进行监控,当数据发生变化时,Vue会更新UI对象。

  新Vue({

  模板: div{{n}}/div ,

  数据:{

  n:0

  }

  }).$ mount(“# app”)

  功能

  Vue不完整版只支持函数。

  新Vue({

  模板: div{{n}}/div ,

  data(){

  返回{

  男:5

  }

  }

  })$mount(#app )

  方法事件处理函数或公共函数新Vue({

  template: div { { n } } { { add()} } button @ click= add button/button/div ,

  数据:{

  n:0

  },

  方法:{

  add(){

  Console.log(我可以是事件处理函数或普通函数)

  }

  }

  }).$ mount(“# app”)

  组件(vue组件:注意大小写)通过三种方式注册全局组件。

  Vue.component(Deon1 ,{

  模板: h2全局组件/h2

  })

  注册本地组件

  const deon2={

  模板:“h2本地组件{{n}}/h2”,

  //数据必须在生成中使用函数

  data() {

  返回{

  小明

  }

  }

  }

  新Vue({

  组件:{

  Deon2: deon2,

  Deon3:{

  模板:“h2组件3/h3”

  }

  },

  模板:` 1

  Div页面

  Deon1/Deon1

  Deon2/Deon2

  Deon3/Deon3

  /div

  `

  }).$ mount(“# app”)

  

使用vue文件添加组件

  Deon4.vue文件

  模板

  我是文件deon.vue {{ name }}/div。

  /模板

  脚本

  导出默认值{

  data() {

  名称:“组件4”;

  },

  };

  /脚本

  样式范围

  部门{

  边框:1px纯红;

  }

  /风格

  主页. js

  从导入版本4。/deon4.vue

  Vue.component(Deon1 ,{

  模板: h2全局组件/h2

  })

  const deon2={

  模板:“h2本地组件{{n}}/h2”,

  //数据必须在生成中使用函数。

  data() {

  返回{

  小明

  }

  }

  }

  新Vue({

  组件:{

  Deon2: deon2,

  Deon3: {

  模板:“h2组件3/h3”

  },

  Deon4

  },

  模板:` 1

  Div页面

  Deon1/Deon1

  Deon2/Deon2

  Deon3/Deon3

  Deon4

  /div

  `

  }).$ mount(“# app”)

  常用的四个生命周期钩子函数创建:内存中的实例挂载:页面中的实例触发更新:实例更改触发销毁:实例销毁触发新的Vue({

  模板: div{{n}}/div ,

  数据:{

  n:0

  },

  已创建(){

  Console.log(实例出现在内存和触发器中);

  },

  已安装(){

  Console.log(“当实例出现在页面中时触发”);

  },

  已更新(){

  Console.log(“实例已被更改触发”);

  },

  销毁(){

  Console.log(“实例销毁触发器”);

  }

  }).$ mount(“# app”)

  Props(外部数据)父组件想传入value name=n (传入字符串):name=n (传入this.n数据):fn=add :(传入this.add函数)new Vue({

  组件:{

  Deon1: {

  道具:[m],

  模板:“div{{m}}/div”

  }

  },

  模板:` divDeon1 :m=m/Deon1/div `,

  数据:{

  男:666

  }

  }).$ mount(“# app”)

  

computed(计算属性)

  没有括号的话,他会根据依赖关系是否变化来缓存(如果依赖关系没有变化,则不会再次结算)类型:{[key:string]:function { get:function,set: function}}

  

用途

  计算属性是计算数据示例1用户名显示示例2列表显示。

  

缓存

  如果依赖属性没有改变,则不会重新计算getter/setter。默认情况下,getter/setter不会被缓存。Vue经过特殊处理后如何缓存?看例子。这是个例子,不是Vue的实现。

  

示例

  var vm=new Vue({

  数据:{ a: 1 },

  计算值:{

  //只读

  aDouble: function () {

  退回这个。a * 2

  },

  //读取并设置

  aPlus: {

  get: function () {

  归还这个

  },

  设置:函数(v) {

  this.a=v - 1

  }

  }

  }

  })

  vm.aPlus //=2

  vm.aPlus=3

  vm.a //=2

  vm.aDouble //=4

  

watch(监听)

  当数据改变时,函数options.watch使用此。$watch usage deep:被监听的对象在其属性改变时被调用,不管它的嵌套有多深。immediate:类型:{[key:string]:string function object array }

用途

  监听开始后立即调用。

  当数据改变时,执行一个函数。示例1撤消示例2模拟计算。很傻,一般也不会这么做。

  

何为变化

  看样本原文let obj={a:a}现在obj={a:a}请问?

  obj变了吗?obj.a变了吗?

  简单类型可以看到,复杂类型(对象)可以通过地址看到。

  其实这是===

  示例:

  var vm=new Vue({

  数据:{

  答:1,

  乙:2,

  c: 3,

  d: 4,

  e: {

  女:{

  g: 5

  }

  }

  },

  观察:{

  答:函数(val,oldVal) {

  console.log(新:%s,旧:%s ,val,oldVal)

  },

  //方法名称

  b:“某种方法”,

  //当任何被侦听对象的属性发生更改时,都会调用此回调,无论它的嵌套有多深。

  丙:{

  处理程序:函数(val,oldVal) { /*.*/},

  深:真//监控深吗?

  },

  //这个回调会在监听开始后立即调用。

  丁:{

  处理程序: someMethod ,

  即时:正确

  },

  //可以传入回调数组,它们会被逐个调用

  电子版:[

  手柄1 ,

  函数handle2 (val,oldVal) { /*.*/},

  {

  处理程序:函数handle3 (val,oldVal) { /*.*/},

  /* .*/

  }

  ],

  //观察vm.e.f的值:{g: 5}

   e.f: function (val,oldVal) { /*.*/}

  }

  })

  vm.a=2 //=新:2,旧:1

  注意,不应该使用箭头函数来定义 watcher 函数(例如search query:new value=this . update autocomplete(new value))。原因是arrow函数绑定了父作用域的上下文,所以这不会像预期的那样指向Vue实例,this.updateAutocomplete也不会被定义。

  

deep: true是干什么的?

  如果object.a变了,object不变吗?

  如果要求的答案是(并且没有改变),那么使用deep: true。

  如果要求的答案是(不变),那么使用deep: false。

  “深”是指你在听物体时是否看得更深。

  

computed和watch的区别

  

computed计算属性

  Computed是计算属性,即依靠某个值或道具计算出来的数据;计算出的值在getter执行后被缓存,只有当它所依赖的数据发生变化时,才会再次调用getter进行计算;不支持异步,在computed中有异步操作时无效。当无法监控数据更改调用时,不需要括号。

  

watch 监听器

  Watch是监听器,可以监听一些数据,然后进行相应的操作;不支持缓存,数据变化会直接触发相应的操作;的监控功能接收两个参数,第一个参数是最新值;第二个参数是输入前的值;支持异步操作;深度选项:被监听的对象在其属性改变时被调用,不管它的嵌套有多深。immediate:为true时,在监听开始后立即调用。

  

总结

  这就是这篇关于Vue中选项的文章。有关Vue中选项的更多信息,请搜索我们以前的文章或继续浏览下面的相关文章。希望你以后能支持我们!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: