vue 524 (生命周期 计算属性 监听)

每个 Vue 实例在被创建时都要经过一系列的初始化过程——例如,需要设置数据监听、编译模板、将实例挂载到 DOM 并在数据变化时更新 DOM 等。同时在这个过程中也会运行一些叫做生命周期钩子的函数,这给了用户在不同阶段添加自己的代码的机会。

依据上表可以确定各个位置的先后触发顺序

//  关于计算属性:

vue改变或获取一个内部方法有以下两种种.

1.在vue对象中 以  methods:{}模式定义各类成员方法:

例如(js  vue对象定义内): methods:{ FF1(){return  成员变量1+‘bbb‘}

在标签内使用时为   <标签> {{FF1()}}  </标签>   //返回  FF1()方法值

该模式是每次调用都会返回最新值.

2. 在vue对象中 以  computed:{}模式定义各类成员方法:

例如(js  vue对象定义内): computed:{ FF1(){return  成员变量1+‘bbb‘}

在标签内使用时为   <标签> {{FF1}}  </标签>   //返回  FF1()方法值

该模式是每次调用不一定会返回最新值. ,除非所引用的变量值发生变更,不然每次调用都是原始值,当调用的变量发生变化时,计算属性值会自动更新

//watch:可以检测指定变量变化,并做指定操作

watch:{变量名1(新值,旧值){用新旧值做先关操作.})}

///以上内容配套测试代码///

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8" />

<title>生命周期+计算属性  监听</title>

<script  src="vue.js"></script>

<style type="text/css">

</style>

</head>

<body>

<div id="zuj">

{{fl + ln}}

<input type="button" value="chang" v-on:click="xg">

</div>

</body>

<script  type =‘text/javascript‘>

var vm= new Vue({

el:‘#zuj‘,

data:{mmm:‘test123456‘,

fl:‘aaa‘,

ln:‘bbb‘},

watch:{fl(nv,odv){console.log(nv)}},

mounted:

function(){

console.log(‘mounted died‘)   //后执行

},

created:function(){

console.log(‘created did‘)  //先执行

},

methods:{   //此范围内将以 fh() 方式进行调用

fh(){ return this.mmm.split("").reverse().join("")},

xg(){this.fl=‘cccc‘},

},

computed:{

fh2(){

return this.mmm +"kkkkkkkklklk"  //调用后,如果mmm值不变化,则调用一直未首次调用值

}

}

})

</script>

</html>

原文地址:https://www.cnblogs.com/xfym888/p/9085773.html

时间: 2024-10-20 17:40:21

vue 524 (生命周期 计算属性 监听)的相关文章

实例成员:计算属性 监听属性以及vue的项目开发

6)字符串补充 双引号: "前缀" + 变量 + "后缀" 单引号: '前缀' + 变量 + '后缀' 反引号: `前缀$(变量)后缀` ps:在反引号中可以用$()来包裹变量,实现字符串的拼接 7)实例成员:计算属性 监听属性 计算属性: ? 1)计算属性其实就是vue中的方法属性,方法名可以作为属性来使用,属性值就是方法的返回值 ? 2) 在computed中声明的方法属性,不能在data中重复声明,比data中声明的属性要多出些逻辑的的地方 ? 3)方法属性自

Vue--computed计算属性监听数据变化----与watch,methods对比

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" con

12.vue属性.监听.组件

1.计算属性 https://cn.vuejs.org/v2/guide/computed.html new Vue({ computed:{//定义 show(){ } } }) ++计算属性1.html:++ <!doctype html> <html> <head> <meta charset="utf-8"> <title>无标题文档</title> <script src="vue.js&

v-once指令、v-cloak指令、条件指令家族、原义指令、循环指令、todolist案例、实例成员-符号、实例成员-计算属性、实例成员-属性监听、监听的案例、局部组件、全局组件、组件交互(父传子、子传父)

v-once指令: v-once:单独使用,限制的标签内容一旦赋值,便不可被动更改(如果是输入框,可以主动修改) <div id="app"> <input type="text" v-model="msg"> <!-- 一旦赋值,只可主动更改 --> <input type="text" v-model="msg" v-once> <p>{{ m

Vue实例生命周期+vueRoter

Vue实例生命周期 vue生命周期之beforeCreate 实例创建之前除标签外,所有的vue需要的数据,事件都不存在 vue生命周期之created 实例创建之后,data和事件已经被解析到,el还没有找到 vue生命周期之beforeMount 开始找标签,数据还没有被渲染,事件也没有被监听 vue生命周期之mounted 开始渲染数据,开始监听事件 vue生命周期之beforeUpdata 数据已经被修改在虚拟DOM,但没有被渲染到页面上 vue生命周期之updata 开始使用Diff算

浅谈Vue的生命周期模型

Vue实例从创建到销毁的过程,就是生命周期.Vue的生命周期包括:开始创建.初始化数据.编译模板.挂载Dom.渲染→更新→渲染.卸载等一系列过程. 在Vue的整个生命周期中,提供了一系列的事件,可以注册JavaScript方法,达到控制整个过程的目的,在这些javascript方法中的this直接指向的是vue的实例. 在Vue的整个生命周期中,实例可以调用一些生命周期钩子,这提供了执行自定义逻辑的机会. Vue提供的生命周期钩子如下:① beforeCreate在实例初始化之后,数据观测(da

Vue实例生命周期

前面的话 Vue实例在创建时有一系列的初始化步骤,例如建立数据观察,编译模板,创建数据绑定等.在此过程中,我们可以通过一些定义好的生命周期钩子函数来运行业务逻辑.本文将详细介绍Vue实例的生命周期 图示 下图是Vue实例生命周期的图示 解释 接下来,根据提供的生命周期钩子,对Vue实例各个阶段的情况进行详细说明 [beforeCreate] 在实例开始初始化时同步调用.此时数据观测.事件等都尚未初始化 [created] 在实例创建之后调用.此时已完成数据观测.事件方法,但尚未开始DOM编译,即

8.vue的生命周期

Vue实例有一个完整的生命周期,也就是从开始创建.初始化数据.编译模板.挂载Dom.渲染→更新→渲染.卸载等一系列过程,我们称这是Vue的生命周期.通俗说就是Vue实例从创建到销毁的过程,就是生命周期. 在Vue的整个生命周期中,它提供了一系列的事件,可以让我们在事件触发时注册js方法,可以让我们用自己注册的js方法控制整个大局,在这些事件响应方法中的this直接指向的是vue的实例. 再上图,对生命周期图的标注 特别值得注意的是created钩子函数和mounted钩子函数的区别 每个钩子函数

迷你MVVM框架 avalonjs 学习教程15、属性监听与模块通信

avalon的ViewModel对象从其内部EventManager里继承了三个方法,$watch.$unwatch.$fire三个方法,它们就是我们本节的主题. 词如其名,非常直白,一看就知道做什么.我们先从$watch方法说起,它能监听当前的VM第一层的监控属性 与 计算属性,如果某属性是一个对象,想监控其子孙属性,就需要定位到此对象上使用$watch回调了.$watch回调会默认传入先后两个属性值. <!DOCTYPE html> <html> <head> &l