04 2020 档案
摘要:接着前面的内容:https://www.cnblogs.com/yanggb/p/12682902.html。 状态管理 类Flux状态管理的官方实现 由于状态零散地分布在许多组件和组件之间的交互中,大型应用的复杂度也经常逐渐增长。为了解决这个问题,vue提供了vuex:受到Elm启发的状态管理库。
阅读全文
摘要:接着前面的内容:https://www.cnblogs.com/yanggb/p/12682822.html。 路由 官方路由 对于大多数的单页面应用,都推荐使用官方支持的vue-router库。 从零开始简单的路由 如果你只需要非常简单的路由而不想引入一个功能完整的路由库,可以像这样动态渲染一个页
阅读全文
摘要:接着前面的内容:https://www.cnblogs.com/yanggb/p/12682573.html。 生产环境部署 以下大多数内容在你使用vue cli的时候都是默认开启的,仅跟你自定义的构建设置有关。 开启生产环境模式 在开发环境下,vue会提供很多的警告来帮助你对付常见的错误与陷阱。而
阅读全文
摘要:接着前面的内容:https://www.cnblogs.com/yanggb/p/12682364.html。 单元测试 vue cli拥有开箱即用的通过jest或mocha进行单元测试的内置选项。官方的vue test utils还提供了更多详细的指引和自定义设置。 简单的断言 你不必为了可测性在
阅读全文
摘要:接着前面的内容:https://www.cnblogs.com/yanggb/p/12682137.html。 单文件组件 介绍 在很多的vue项目中,我们都是使用【Vue.component】来定义全局组件,紧接着用【new Vue({el:'#container'})】在每个页面内指定一个容器元
阅读全文
摘要:接着前面的内容:https://www.cnblogs.com/yanggb/p/12677019.html。 过滤器 vue允许开发者自定义过滤器,可被用于一些常见的文本格式化。过滤器可以用在两个地方:双花括号插值和【v-bind】表达式(后者从2.1.0+开始支持)。过滤器应该被添加在javas
阅读全文
摘要:接着前面的内容:https://www.cnblogs.com/yanggb/p/12663909.html。 插件 插件通常是用来为vue添加全局功能的。 插件的功能范围 插件的功能范围没有严格的限制,一般有以下几种: 1.添加全局方法或属性。比如vue-custom-element。 2.添加全
阅读全文
摘要:接着前面的内容:https://www.cnblogs.com/yanggb/p/12639440.html。 渲染函数&JSX 基础 vue推荐在绝大多数的情况下使用模板来创建html。然而在一些场景中,你真的需要javascript的完全编程能力。因此这时你就可以使用渲染函数,它比模板更接近编译
阅读全文
摘要:接着前面的内容:https://www.cnblogs.com/yanggb/p/12633051.html。 自定义指令 简介 除了核心功能默认内置的指令(【v-mode】和【v-show】等),vue也允许注册自定义指令。注意,在vue2.x中,代码复用和抽象的主要形式是组件。然而,在有的情况下
阅读全文
摘要:接着前面的内容:https://www.cnblogs.com/yanggb/p/12632730.html。 可复用性&结合-混入 基础 混入(mixin)提供了一种非常灵活的方式,来分发vue组件中的可复用功能。一个混入对象可以包含任意的组件选项。当组件使用混入对象的时候,所有的混入对象的选项都
阅读全文
摘要:接着前面的内容:https://www.cnblogs.com/yanggb/p/12631279.html。 循环引用 递归组件 组件是可以在它们自己的模板中调用自身的,不过它们只能通过【name】选项来做这件事。 name: 'unique-name-of-my-component' 当你使用【
阅读全文
摘要:接着前面的内容:https://www.cnblogs.com/yanggb/p/12631022.html。 程序化的事件侦听器 在前面的学习中,我们已经知道了【$emit】全局属性的用法,它可以被【v-on】指令侦听,但是vue实例同时在其事件接口中提供了其他的方法,我们可以: 1.通过【$on
阅读全文
摘要:接着前面的内容:https://www.cnblogs.com/yanggb/p/12629705.html。 处理边界情况 这里记录的都是和处理边界情况有关的功能,即一些需要对vue的规则做一些小调整的特殊情况。不过要注意的是,这些功能都是有劣势或危险的场景的。官方文档中在每个案例中都有注明,所以
阅读全文
摘要:接着前面的内容:https://www.cnblogs.com/yanggb/p/12616847.html。 动态组件&异步组件 在前面学习组件基础的时候学习过动态组件,官方文档给出过一个例子:在一个多标签的界面中使用【is】属性来切换不同的组件: <component v-bind:is="cu
阅读全文
摘要:接着前面的内容:https://www.cnblogs.com/yanggb/p/12616543.html。 组件中的插槽 在2.6.0的版本中,vue为具名插槽和作用域插槽引入了一个新的统一的语法(即【v-slot】指令),它取代了【slot】和【slot-scope】这两个目前已经被废弃但是还
阅读全文
摘要:接着前面的内容:https://www.cnblogs.com/yanggb/p/12609450.html。 组件的自定义事件 这里来学习一下组件中的自定义事件。 事件名 不同于组件名和prop,事件名不存在任何自动化的大小写转化,而是触发的事件名需要完全匹配监听这个事件所用的名称。 举个例子,如
阅读全文
摘要:接着前面的内容:https://www.cnblogs.com/yanggb/p/12602256.html。 组件的Prop Prop是组件之间通信的一个重要途径,了解其知识十分重要。 Prop的大小写(camelCase vs kebab-case) 我们知道,html中的属性名是大小写不敏感的
阅读全文
摘要:接着前面的内容:https://www.cnblogs.com/yanggb/p/12595860.html。 组件的注册 注册组件有一些规范约定与注意事项。 组件名的命名规范 在注册一个组件的时候,我们始终需要给它一个名字。比如在前面的全局注册的时候我们已经看到了: Vue.component('
阅读全文
摘要:接着前面的内容:https://www.cnblogs.com/yanggb/p/12592256.html。 组件基础 组件化是vue的一个重要特性,也是vue学习中非常重要的一个知识点。 基础示例 这里有一个vue组件的实例: // 定义一个名为button-counter的新组件 Vue.co
阅读全文
摘要:接着前面的内容:https://www.cnblogs.com/yanggb/p/12586416.html。 表单的输入绑定 表单的输入绑定是一块很重要的内容,因为所有的业务系统都离不开基础表单的录入功能,因此要特别认真仔细地掌握其中的相关知识点。 基础用法 你可以使用【v-model】指令在表单
阅读全文
摘要:接着前面的内容:https://www.cnblogs.com/yanggb/p/12584237.html。 事件处理 使用javascript当然少不了事件处理,即使是vue也不会例外。 监听事件 在vue中可以使用【v-on】指令监听dom事件,并在触发的时候运行一些javascript代码。
阅读全文
摘要:接着前面的内容:https://www.cnblogs.com/yanggb/p/12577948.html。 数组的更新检测 数组在javascript是一种特殊的对象,不是像普通的对象那样通过Object.defineProperty()套用getter和setter就能实现数据劫持,因此vue
阅读全文
摘要:接着前面的内容:https://www.cnblogs.com/yanggb/p/12577433.html。 列表渲染 vue提供了一个【v-for】指令用于列表渲染(循环)。 用【v-for】指令把一个数组对应为一组元素 我们可以使用【v-for】指令基于一个数组来渲染一个列表。使用【v-for
阅读全文
摘要:接着前面的内容:https://www.cnblogs.com/yanggb/p/12576797.html。 条件渲染 vue也提供了一些指令,用于条件性地渲染模板中的内容。 【v-if】和【v-else】指令 【v-if】指令用于条件性地渲染一块内容,这块内容只会在指令的表达式返回truthy值
阅读全文
摘要:接着前面的内容:https://www.cnblogs.com/yanggb/p/12571171.html。 class与style绑定 操作元素的class列表和内联样式,是数据绑定的一个常见需求。因为它们都是属性,所以我们可以用【v-bind】指令去处理它们,只需要通过表达式计算出字符串的结果
阅读全文
摘要:接着前面的内容:https://www.cnblogs.com/yanggb/p/12571062.html。 计算属性 模板内的表达式非常便利,但是设计它们的初衷是用于简单运算的。如果在模板中放入太多太多的逻辑,会让模板过重且难以维护。 <div id="example"> {{ message.
阅读全文
摘要:接着前面的内容:https://www.cnblogs.com/yanggb/p/12563162.html。 模板语法 vue使用了基于html的模板语法,允许开发者声明式地将dom绑定到底层vue实例的数据。所有vue的模板都是合法的html,因此能被遵循规范的浏览器或html解析器解析。在底层
阅读全文
摘要:接着前面的内容:https://www.cnblogs.com/yanggb/p/12562137.html。 vue实例 要使用vue提供的特性与功能,都需要通过vue实例来使用。 创建一个vue实例 每一个vue应用,都是通过用Vue函数创建一个新的vue实例开始的。 var vm = new
阅读全文
摘要:接着前面的内容:https://www.cnblogs.com/yanggb/p/12555836.html。 声明式渲染 vue的核心是一个允许采用简洁的模板语法来声明式地将数据渲染进DOM的系统。 <html> <head> <script src="https://cdn.jsdelivr.n
阅读全文
摘要:使用vue开发项目已经过了一段时间了,对其中的很多东西还是一知半解,于是想要系统学习一下。主要内容是参照官方中文网站https://cn.vuejs.org/v2/guide/,然后加上一些自己的理解与批注。 什么是vue.js Vue (读音 /vjuː/,类似于view) 是一套用于构建用户界面
阅读全文