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 相关文章推荐
jQuery 开天辟地入门篇一
Dec 09 Javascript
jquery插件开发之实现google+圈子选择功能
Mar 10 Javascript
JQuery Mobile实现导航栏和页脚
Mar 09 Javascript
关于安卓手机微信浏览器中使用XMLHttpRequest 2上传图片显示字节数为0的解决办法
May 17 Javascript
简单理解vue中track-by属性
Oct 26 Javascript
JS实现倒计时(天数、时、分、秒)
Nov 16 Javascript
在nginx上部署vue项目(history模式)的方法
Dec 28 Javascript
mui框架 页面无法滚动的解决方法(推荐)
Jan 25 Javascript
vue项目打包部署_nginx代理访问方法详解
Sep 20 Javascript
如何使用CSS3+JQuery实现悬浮墙式菜单
Jun 18 jQuery
为什么Vue3.0使用Proxy实现数据监听(defineProperty表示不背这个锅)
Oct 14 Javascript
js实现计时器秒表功能
Dec 16 Javascript
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文件系统管理(实例讲解)
2017/09/19 PHP
javascript与CSS复习(《精通javascript》)
2010/06/29 Javascript
当jQuery遭遇CoffeeScript的时候 使用分享
2011/09/17 Javascript
关于jquery中全局函数each使用介绍
2013/12/10 Javascript
JS不间断向上滚动效果代码
2013/12/25 Javascript
jquery选择器之层级过滤选择器详解
2014/01/27 Javascript
JQuery做的一个简单的点灯游戏分享
2014/07/16 Javascript
Windows 系统下安装和部署Egret的开发环境
2014/07/31 Javascript
JavaScript数组的一些奇葩行为
2016/01/25 Javascript
Bootstrap 设置datetimepicker在屏幕上面弹出设置方法
2017/03/21 Javascript
详解vue组件开发脚手架
2018/06/15 Javascript
Vue.use源码学习小结
2018/06/20 Javascript
小程序点赞收藏功能的实现代码示例
2018/09/07 Javascript
koa router 多文件引入的方法示例
2019/05/22 Javascript
vue项目中常见问题及解决方案(推荐)
2019/10/21 Javascript
vue+elementui实现点击table中的单元格触发事件--弹框
2020/07/18 Javascript
Vue管理系统前端之组件拆分封装详解
2020/08/23 Javascript
[02:43]DOTA2英雄基础教程 圣堂刺客
2013/12/09 DOTA
python学习手册中的python多态示例代码
2014/01/21 Python
Python创建文件和追加文件内容实例
2014/10/21 Python
Python自动化构建工具scons使用入门笔记
2015/03/10 Python
Python进程间通信Queue实例解析
2018/01/25 Python
Python 反转字符串(reverse)的方法小结
2018/02/20 Python
Python3.5 处理文本txt,删除不需要的行方法
2018/12/10 Python
python url 参数修改方法
2018/12/26 Python
python绘制漏斗图步骤详解
2019/03/04 Python
Keds官方网站:购买帆布运动鞋和经典皮鞋
2016/11/12 全球购物
丝芙兰波兰:Sephora.pl
2018/03/25 全球购物
2014大学生全国两会学习心得体会
2014/03/13 职场文书
高中综合实践活动总结
2014/07/07 职场文书
2014物价局民主生活会对照检查材料思想汇报
2014/09/24 职场文书
购房协议书范本
2014/10/02 职场文书
人大代表选举标语
2014/10/07 职场文书
学习心理学的体会
2014/11/07 职场文书
nginx 多个location转发任意请求或访问静态资源文件的实现
2021/03/31 Servers
【海涛教你打DOTA】剑圣第一人称视角解说
2022/04/01 DOTA