监视属性中可以开启异步任务:当计算属性中添加异步操作时会导致页面读取不到数据,computed: { fullName() { setTimeout(() => { return this.firstName + '-' + this.lastName; }, 1000) }},页面展示:是由于 return 这个返回值交给的是 setTimeout 里的函数,即粉色框内容交给了红色框。所以 fullName 是没有办法拿到值的,页面也无法展示。注意:​ 1. 所被...

<!-- 准备好一个容器 --><div id="app"> <h2>今天天气是<!--5--></h2> <button @click="changeWeather">切换天气</button></div><script type="text/javascript"> const vm = new Vue({ el:...

<div id="app"> 姓:<input type="text" v-model="firstName"><br /><br /> 名:<input type="text" v-model="lastName"><br /><br /> 全名:<span>{{ fullName...

data() { //data 中用于存储数据,数据供 el 所指定的容器去使用 return { name: 'vue' } },第一步:准备容器第二步:有 vue 实例第三步:el: '#app', 这个配置找到该容器并拿过来解析第四步:解析过程中进行扫描,扫描自己有没有涉及的语法,如果有语法存在,拿涉及到的语法进行替换,生成一个全新的容器插值语法中可写的内容:注意区分:js 表达式和 js 代码(语句)表达式:一个表达式会生成一个值,可以放在任何一个需要值的地方a ,a+b,demo...

Object.defineProperty(obj, prop, descriptor)obj:要定义属性的对象prop:要定义或修改的属性的名称或 symboldescriptor:要定义或修改的属性描述符let person = { name: '张三', sex: '男'}Object.defineProperty(person, 'age', { value: 18})通过...

Vue 中的数据代理:通过 vm 对象来代理 data 对象中属性的操作(读 / 写)基本原理通过 Object.defineProperty () 把_.data 对象中所有属性添加到 vm 上。为每一个添加到 vm 上的属性,都指定一个 getter/setter。在 getter/setter 内部去操作(读 / 写)data 中对应的属性。

# 事件修饰符<div id="app"> <a href="https://www.baidu.com/" @click="showInfo">点击跳转</a></div><script type="text/javascript"> const vm = new Vue({ el: '#app', data: { },...

# 1 v-modelv-model 只能用在:<input> <select> <textarea> <components>v-model 本质上是一个语法糖。如下代码 <input v-model="message"> 本质上是 <input :value="message" @input="message=...

# 1块元素:块级框从上到下一个接一个地排列,框之间的垂直距离是由框的垂直外边距计算出来。行内元素:行内框在一行中水平布置。可以使用水平内边距、边框和外边距调整它们的间距。但是,垂直内边距、边框和外边距不影响行内框的高度。由一行形成的水平框称为行框(Line Box),行框的高度总是足以容纳它包含的所有行内框。不过,设置行高可以增加这个框的高度。span 是行内元素,不考虑宽和高的设置,故单独设置宽和高对 span 不起作用,块元素的宽度是占据整行,而行内元素的宽度是根据元素内容的宽度。行内元素 属性 height width margin-top margin-bottom...