Vue实例的对象参数options的几个常用选项详解


Posted in Javascript onNovember 08, 2019

一. 新建一个Vue实例可以有下列两种方式:

1.new一个实例

var app= new Vue({
 el:'#todo-app', // 挂载元素
 data:{ // 在.vue组件中data是一个函数,要写成data () {}这种方式
  items:['item 1','item 2','item 3'],
  todo:''
 },
 methods:{ // 方法成员
  rm:function(i){
   this.items.splice(i,1)
  }
 }
})
// 之后再

export default app // 默认输出,可在其他组件引用

2. 直接

export default {
 name: '',
 components: {},
 data: () {}, // data函数成员
 watch: {}, // watch监视成员
 computed: {}, // computed计算成员
 created: function () {},
 methods: {}, // methods对象成员
 actions: {}
}

二. Vue实例,我参数options。它是一个对象。可以选择如下选项:

data函数成员

methods对象成员

模板template

挂载元素el

生命周期钩子

props属性声明

computed计算成员

watch监视成员

选项:watch监视

watch监视是一个对象,键是需要观察的表达式,值可以是

1.回调函数,

2.值也可以是方法名,

3.或者包含选项的对象。

ps:表达式暂时可以理解为一个可以得到值的式子

Ⅰ回调函数,来监视一个值的变化(监视data函数体的变量)

如:

data () {
  return {
   replaceList: []
  }
 },
 watch: {
  replaceList: function (val, oldVal) {
   console.log('replaceList changed')
  }
 }

Ⅱ第2种形式:”值也可以是方法名“,可以把watch的函数移到methods内。

则上面的形式可以改为:

data () {
  return {
   replaceList: []
  }
 },
 watch: {
  replaceList: 'changed'
 },
 methods: {
  changed: function (val, oldVal) {
   console.log('replaceList changed')
  }
 }

Ⅲ包含选项的对象

如:上面两种就等同于

data () {
  rerurn {
   replaceList: 1
  }
 },
 mounted: function () {
  this.$watch('replaceList',function(val, oldVal){
    console.log('replaceList changed')
  })
 },
 methods: {
 
 }

选项:computed计算成员

虽然在Mustache语法内可以使用表达式,即{{}}。比如为数字前加入¥符号,可以使用表达式:

{{‘¥'+money}}

可以,但不推荐。这种情形应尽量用计算成员:

在vue-cli脚手架的.vue组件中

实现RMB前加上美元符号

<template>
 <input v-model="money"> // 响应式的
 <span>{{RMB}}</span> // {{}}中可以是变量,也可以是方法名
</template>
 
<script>
 data () {
  rerurn {}
 },
 computed: {
  RMB: function () {
   return '¥'+ this.money
  }
 }
</script>

引入了计算成员RMB来做长表达式的计算,而在HTML内保持清晰的字段引用即可。这样做依然可以享有响应式编程的好处:当money值改变时,引用RMB的标签值也会被自动更新。

以上这篇Vue实例的对象参数options的几个常用选项详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JS实现距离上次刷新已过多少秒示例
May 23 Javascript
javascript实现的图片切割多块效果实例
May 07 Javascript
Javascript中prototype属性实现给内置对象添加新的方法
May 14 Javascript
jQuery焦点图轮播特效代码分享(3款)
Sep 05 Javascript
JS组件Bootstrap Table使用方法详解
Feb 02 Javascript
jQuery实现将div中滚动条滚动到指定位置的方法
Aug 10 Javascript
深究AngularJS之ui-router详解
Jun 13 Javascript
详解HTML5 使用video标签实现选择摄像头功能
Oct 25 Javascript
vue-cli + sass 的正确打开方式图文详解
Oct 27 Javascript
原生JavaScript实现日历功能代码实例(无引用Jq)
Sep 23 Javascript
vue element upload组件 file-list的动态绑定实现
Oct 11 Javascript
Vue $attrs &amp; inheritAttr实现button禁用效果案例
Dec 07 Vue.js
Vuex中实现数据状态查询与更改
Nov 08 #Javascript
vue实现将数据存入vuex中以及从vuex中取出数据
Nov 08 #Javascript
vue.js的简单自动求和计算实例
Nov 08 #Javascript
vue中get请求如何传递数组参数的方法示例
Nov 08 #Javascript
Vue搭建后台系统需要注意的问题
Nov 08 #Javascript
vue视频播放暂停代码
Nov 08 #Javascript
vue-dplayer 视频播放器实例代码
Nov 08 #Javascript
You might like
一段防盗连的PHP代码
2006/12/06 PHP
php printf输出格式使用说明
2010/12/05 PHP
10条PHP高级技巧[修正版]
2011/08/02 PHP
PHP中COOKIES使用示例
2015/07/26 PHP
Yii2框架控制器、路由、Url生成操作示例
2019/05/27 PHP
JavaScript继承基础讲解(原型链、借用构造函数、混合模式、原型式继承、寄生式继承、寄生组合式继承)
2014/08/16 Javascript
纯javascript制作日历控件
2015/07/17 Javascript
详解JavaScript中的4种类型识别方法
2015/09/14 Javascript
在windows上用nodejs搭建静态文件服务器的简单方法
2016/08/11 NodeJs
基于touch.js手势库+zepto.js插件开发图片查看器(滑动、缩放、双击缩放)
2016/11/17 Javascript
微信小程序-图片、录音、音频播放、音乐播放、视频、文件代码实例
2016/11/22 Javascript
JavaScript实现事件的中断传播和行为阻止方法示例
2017/01/20 Javascript
Vue.js中使用iView日期选择器并设置开始时间结束时间校验功能
2018/08/12 Javascript
微信小程序自定义组件传值 页面和组件相互传数据操作示例
2019/05/05 Javascript
防止Layui form表单重复提交的实现方法
2019/09/10 Javascript
Layui tree 下拉菜单树的实例代码
2019/09/21 Javascript
bootstrap-closable-tab可实现关闭的tab标签页插件
2020/08/09 Javascript
[33:42]LGD vs OG 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
[01:18]PWL开团时刻DAY4——圣剑与抢盾
2020/11/03 DOTA
在Python的Django框架中创建语言文件
2015/07/27 Python
pycharm远程调试openstack的图文教程
2017/11/21 Python
Python向Excel中插入图片的简单实现方法
2018/04/24 Python
Python不使用int()函数把字符串转换为数字的方法
2018/07/09 Python
Python使用random.shuffle()打乱列表顺序的方法
2018/11/08 Python
使用memory_profiler监测python代码运行时内存消耗方法
2018/12/03 Python
Python定时任务APScheduler安装及使用解析
2020/08/07 Python
HTML5 通信API 跨域门槛将不再高、数据推送也不再是梦
2013/04/25 HTML / CSS
编码转换,怎样实现将GB2312编码的字符串转换为ISO-8859-1编码的字符串
2014/01/07 面试题
煤矿安全知识竞赛活动总结
2014/07/07 职场文书
市委常委班子党的群众路线教育实践活动整改措施
2014/10/02 职场文书
鲁迅故里导游词
2015/02/05 职场文书
大学生简历自我评价2015
2015/03/03 职场文书
导游词之泉州崇武古城
2019/12/20 职场文书
Spring Data JPA使用JPQL与原生SQL进行查询的操作
2021/06/15 Java/Android
详解Vue slot插槽
2021/11/20 Vue.js
vue打包时去掉所有的console.log
2022/04/10 Vue.js