我是怎么学会vue的17:父子组件的通信

2020-05-31
阅读 3 分钟
1k
常用于请求列表数据:要显示ul->li列表时,父组件向服务器请求数据,数据存放在父组件里,并把数据传递给子组件,然后子组件使用 v-for 遍历显示。(因为子组件不能直接访问父组件或vue实例的数据)

我是怎么学会vue的16:为什么组件的data必须是函数

2020-05-19
阅读 2 分钟
1.4k
组件的数据定义在哪里 之前组件的数据都是写死在标签里的,现在我希望组件的数据可以动态变化:数据改变,组件的显示也随着变化。 组件的数据在哪里定义呢? 注册组件时,数据写在组件自己的data属性中。以全局组件为例,data是在注册组件的时候来指定的: {代码...} 为什么组件的数据需要保存在组件中,而不是保存在实...

我是怎么学会vue的15:全局组件vs局部组件、父组件vs子组件

2020-05-11
阅读 1 分钟
1.4k
全局组件vs局部组件 父组件vs子组件 父组件通过全局的方式注册。子组件是在某个组件里面注册(不是在全局注册,也不是Vue实例下面注册)。 代码演示: {代码...} 【局部组件】和【子组件】的区别 局部组件是在Vue实例下面注册,子组件是在其他组件里面注册

我是怎么学会vue的14:组件的基本使用

2020-05-11
阅读 4 分钟
1.3k
创建组件构造器 Vue.extend() 需要传入一个对象Vue.extend创建的是一个组件构造器,通常在创建构造器时,传入template作为我们自定义组件的模板。 Vue.component这种写法在2.X文档中几乎看不到了,一般使用语法糖的形势来写。见下文。

我是怎么学会vue的13:v-model 表单数据双向绑定

2020-05-09
阅读 3 分钟
1.8k
什么是双向绑定?data里是什么,input就显示什么,修改input里的数据,会同步修改data里面对应的数据。 1.v-model结合type类型使用 {代码...} input的数据,和data里面的message,是双向绑定了的。 2.v-model结合radio类型使用 {代码...} 此时,data的sex属性里面,即存储了sex的值。 radio单选框如何实现单选(排它),...

我是怎么学会vue的12:数组的哪些方法是响应式的

2020-05-03
阅读 1 分钟
857
为什么数组变化,页面会自动刷新? 原因是:数据是响应式的,vue 监听到数据内部发生变化,会自动根据新数据,重新渲染 DOM,再根据虚拟 DOM 修改真实 DOM。 需要注意的是,并不是数据只要变动,页面就跟着变化。 用哪些方式去修改数组,数据是响应式的? 响应式修改数组的方法有: push() splice() pop() shift() unshi...

我是怎么学会vue的11:v-for绑定和不绑定key的区别

2020-05-02
阅读 2 分钟
1.7k
先说结论:使用v-for时,需要给元素或组件添加key属性。 加上key的目的:避免重复渲染 通过案例讲解。 案例:在字母列表 B 和 C 之间,插入 F {代码...} 实现方法 插入F方法:使用 splice {代码...} 性能上的问题 先引入一个概念:diff算法。 vue会先把元素放到虚拟dom里,等代码段执行完(比如一个for循环执行完),vue...

我是怎么学会vue的10:v-if、v-else-if、v-else、v-show

2020-04-24
阅读 2 分钟
1.2k
v-if 功能:通过v-if="ture\false"来决定标签里面的内容是否渲染。 v-if + v-else 如果v-if里面的内容为true,渲染v-if的内容,否则渲染v-else的内容。 {代码...} v-if + v-else-if + v-else 根据条件判断应该渲染哪个标签的内容。 {代码...} v-show v-show只是增加了行内样式 display:none,让标签不显示,但这个标签...

ES6对象字面量的增强写法

2020-04-19
阅读 1 分钟
3k
什么是对象字面量 定义一个对象叫obj {代码...} 但实际开发中我们通常不会这样写,我们一般会写成 {代码...} 上面那个大括号{ }就叫对象字面量。 对象字面量的写法 给对象字面量添加一些属性和方法 {代码...} 对象字面量的增强写法 属性的增强写法 定义name,age,height三个属性。 ES5版本 {代码...} ES6版本 {代码...}...

const的使用和注意点

2020-04-18
阅读 1 分钟
1.4k
const用于定义常量,定义完不能修改。 建议在开发中优先使用const,这样可以有效避免变量被其他同事修改的问题。 定义const的时候必须赋值。 {代码...} 常量的含义是:指向的对象不能修改,但是可以修改对象内部的属性。 指向的对象不能修改:像下面这样 {代码...} 如图,指向的对象不能修改,是说const obj已经指向右上...

var和let的区别(变量的作用域、闭包)

2020-04-17
阅读 4 分钟
1.5k
var 在 if 和 for 中 没有作用域,在 function 中有作用域,即var 没有块级作用域。块指的是代码块,即 if 和 for 后面的{ }。

我是怎么学会vue的09:计算属性(computed属性)

2020-04-10
阅读 3 分钟
1.6k
data中的数据,可以通过插值语法直接显示到页面上,但有时需要先处理一下(比如把多个数据合并),再显示到页面。 此时就会用到计算属性(vue实例的computed属性)。 用法 HTML:在模板里面指定属性名 {代码...} JS:在computed属性里面,添加方法。 {代码...} 案例 显示图书总价 {代码...} {代码...} setter和getter ge...

我是怎么学会vue的08:v-bind动态绑定style属性

2020-04-09
阅读 1 分钟
1.2k
对象是键值对的形式:键是属性名,值是属性的值,不是布尔值。值需要写到引号里面(字符串),不写引号的话则解析成变量名。变量定义在data里面,如下:

我是怎么学会vue的08:v-bind动态绑定class(对象语法)

2020-03-27
阅读 3 分钟
2.1k
实际开发中,标签的class通常不会使用一个普通字符串写死,而是动态地给标签绑定class,有2种绑定语法:对象语法和数组语法。 对象语法(常用) 绑定方式是使用对象 v-bind:class="{ }"。 对象{ }由键值对构成,键是类名,值是布尔值。 如下所示: {代码...} 对象语法的核心是:根据布尔值,判断要不要给标签加上某个类...

我是怎么学会vue的07:v-bind属性绑定(简写用冒号)

2020-03-27
阅读 1 分钟
1.3k
实际开发中,标签的属性不是写死的,需要先从服务器请求,服务器返回json数据,把数据放进vue实例的data,再把data和标签的属性做绑定。

我是怎么学会vue的06:插值(mustache语法及其他插值指令)

2020-03-26
阅读 2 分钟
1.5k
插值的意思就是把数据(值)插进dom里,数据定义在vue实例的data属性中。 1. 使用Mustache语法(即双大括号{{ }}) DOM: {代码...} vue实例的数据: {代码...} 2. 其他的插值指令 (1)v-once 只显示第一次解析到的数据,当数据发生改变时,页面不跟着变。 {代码...} (2)v-html 如果数据是一个HTML标签的字符串,使用v...

我的怎么学会vue的05:vue的生命周期

2020-03-23
阅读 1 分钟
720
其中created和mounted是比较常用的。 created常用语做网络请求,把请求到的数据存到data里面,data变化dom即自动变化。

js中方法和函数的区别

2020-03-22
阅读 1 分钟
5.5k
位置不一样。 写在外面(直接写在<script>标签里面的)的叫函数,比如这样 {代码...} 写在类里面的叫方法,因为方法和某个实例或对象是绑定的。比如这样: {代码...}

我的怎么学会vue的04:vue的options选项

2020-03-22
阅读 1 分钟
1.6k
我们在创建vue实例的时候,穿进去了一个对象options。这个options中,可以包含哪些选项呢?我们可以看vue的官方文档,【选项/xx】都是可以使用的选项。

我的怎么学会vue的03:Vue中的MVVM

2020-03-21
阅读 2 分钟
1.7k
MVVM是 Model View ViewModel 的缩写。这种模式的优点是:改变js中的数据,dom结构就会跟着变化,不用再手动修改dom。

我的怎么学会vue的02:v-on事件监听(附计数器案例)

2020-03-20
阅读 4 分钟
1.1k
点击之后要做的事,可以写在click=""这个引号里面(如果只有一句代码的话),也可以定义一个函数,把函数名写在引号里面click="add"。定义函数要在vue实例的methods属性里面定义。

我的怎么学会vue的01:安装与创建实例、v-for遍历数组或对象

2020-03-20
阅读 2 分钟
1.2k
安装 要学习vue,就要先安装它。vue分为开发版本和生产版本,学习和开发的时候使用开发版本;上线的时候使用生产版本。 vue有三种安装方式: cdn引用 本地下载和引入(推荐初学者使用,学习最基本的语法的初期阶段,使用这种方式) NPM安装 创建实例 演示:定义一个div元素的内容 如果内容是一个字符串 使用script标签,...

react 阻止 form 表单提交

2020-01-23
阅读 1 分钟
4.8k
首先要给form标签绑定onSubmit事件,绑定onClick事件是不行的。 {代码...} 然后,在handleSubmit函数里,阻止默认事件 {代码...} 或者使用 {代码...}

JavaScript获取可视区、页面内容、浏览器宽高、滚动高度

2019-11-08
阅读 4 分钟
9.9k
兼容性IE、Safari 和 Opera 支持 ScreenLeft/ScreenTopFirefox、Safari 支持 ScreenX/ScreenYChrome 都支持

获取鼠标位置(区分event对象中的 clientX、offsetX、screenX、pageX )

2019-11-08
阅读 1 分钟
5.6k
作用:都是用来获取鼠标的位置 clientX clientY {代码...} client直译就是客户端,客户端的窗口就是指游览器的显示页面内容的窗口大小(不包含工具栏、导航栏等等)。 event.clientX、event.clientY就是用来获取鼠标距游览器显示窗口的长度。 兼容性:IE和主流游览器都支持。 offsetX offsetY {代码...} offset意为偏移...

jQuery 中的显式遍历(explicitly iterate)与隐式遍历(implicit iteration)

2019-01-05
阅读 2 分钟
2k
如果通过核心函数找到的元素不止一个,那么在添加事件(或添加类)的时候,jQuery 会遍历所有找到的元素,给所有找到的元素添加事件(或类)。这就叫做“隐式遍历”。

伪元素 ::after 和 ::before 应该这么用(一)

2018-07-03
阅读 3 分钟
24.2k
CSS 在渲染文档的时候,伪元素可以通过 css 给 HTML 添加一个元素(叫标签也行),这个元素在文档树中是找不到的。伪元素被当做 CSS 的样式来进行展现,用法和普通的元素用法是一样的。