其他章节请看: vue 快速入门 系列 侦测数据的变化 - [vue 源码分析] 本文将 vue 中与数据侦测相关的源码摘了出来,配合上文(侦测数据的变化 - [基本实现]) 一起来分析一下 vue 是如何实现数据侦测的. Tip: 以下代码出自 vue.esm.js,版本为 v2.5.20.无关代码有一些删减.中文注释都是笔者添加. /** * Define a property. * 定义属性的方法 */ function def (obj, key, val, enumerable) {…
其他章节请看: vue 快速入门 系列 侦测数据的变化 - [vue api 原理] 前面(侦测数据的变化 - [基本实现])我们已经介绍了新增属性无法被侦测到,以及通过 delete 删除数据也不会通知外界,因此 vue 提供了 vm.$set() 和 vm.$delete() 来解决这个问题. vm.$watch() 方法赋予我们监听实例上数据变化的能力. 下面依次对这三个方法的使用以及原理进行介绍. Tip: 以下代码出自 vue.esm.js,版本为 v2.5.20.无关代码有一些删减.…
其他章节请看: vue 快速入门 系列 侦测数据的变化 - [基本实现] 在 初步认识 vue 这篇文章的 hello-world 示例中,我们通过修改数据(app.seen = false),页面中的一行文本(现在你看到我了)就不见了. 这里涉及到 Vue 一个重要特性:响应式系统.数据模型只是普通的 JavaScript 对象,当我们修改时,视图会被更新.而变化侦测是响应式系统的核心. Object的变化侦测 下面我们就来模拟侦测数据变化的逻辑. 强调一下我们要做的事情:数据变化,通知到外界…
vue 快速入门(未完结,持续更新中...) 前言 为什么要学习 vue 现在主流的框架 vue.angular 和 react 都是声明式操作 DOM 的框架.所谓声明式,就是我们只需要描述状态与 DOM 之间的映射关系,就可以将状态渲染成视图.状态到视图的转换,框架会帮我们做,不需要我们手动去操作 DOM.我们只需要关注状态的维护,而不用再关心 DOM 的操作. 笔者想通过 vue 来探索一下这其中的奥秘. vue 是什么 Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户…
其他章节请看: vue 快速入门 系列 Vue(自身) 项目结构 前面我们已经陆续研究了 vue 的核心原理:数据侦测.模板和虚拟 DOM,都是偏底层的.本篇将和大家一起来看一下 vue 自身这个项目,了解它的目录结构,以及构建过程. vue 的目录结构 将 vue 项目 下载到本地 git clone git@github.com:vuejs/vue.git vuev2.5.20 - vuev2.5.20 - dist // 构建后的文件 - examples // 有几个用 vue 写的示例…
其他章节请看: vue 快速入门 系列 实例方法(或 property)和静态方法 在 Vue(自身) 项目结构 一文中,我们研究了 vue 项目自身构建过程,也知晓了 import Vue from 'core/index' 就是引入 vue 的核心代码,该文件的前两行对应着 vue 的实例方法和静态方法(或称全局方法),本篇就和大家一起来看一下这两部分. // vuev2.5.20/src/core/index.js // 返回 Vue 构造函数,并准备好实例方法 import Vue fr…
其他章节请看: vue 快速入门 系列 Vue 实例的初始化过程 书接上文,每次调用 new Vue() 都会执行 Vue.prototype._init() 方法.倘若你看过 jQuery 的源码,你会发现每次调用 jQuery() 也会执行一个初始化的方法(即 jQuery.fn.init()).两者在执行初始化方法后都会返回一个实例(vue 实例或 jQuery 实例),而且在初始化过程中,都会做许多事情.本篇就和大家一起来看一下 vue 实例的初始化过程. Tip:本篇亦叫 Vue.pr…
其他章节请看: vue 快速入门 系列 vue 的基础应用(上) Tip: vue 的基础应用分上下两篇,上篇是基础,下篇是应用. 在初步认识 vue一文中,我们已经写了一个 vue 的 hello-world.对 vue 已经有了一个大概的印象. 接下来我们应该掌握 vue 的最基础知识,学会 vue 的基本应用. 比较好的方法就是花个几天的时间将 vue 官网的基础篇尽量走一遍,写一写例子.以下是 vue 2.x 的基础篇的目录: - 教程 2.x - 基础 - 安装 - 介绍 - Vue…
其他章节请看: vue 快速入门 系列 Vue CLI 4.x 上 在 vue loader 一文中我们已经学会从零搭建一个简单的,用于单文件组件开发的脚手架:本篇,我们将全面学习 vue-cli 这个官方的.成熟的脚手架. 分上下两篇进行,上篇主要是"基础",下篇主要是"开发" Tip:介绍顺序尽可能保持与官方文档一致 介绍 vue-cli 是一个基于 vue.js 进行快速开发的完整系统. 让我们专注在撰写应用上,而不必花好几天去纠结配置的问题. Vue CLI…
其他章节请看: vue 快速入门 系列 Vue Router Vue Router 是 Vue.js 官方的路由管理器.它和 Vue.js 的核心深度集成,让构建单页面应用变得易如反掌. 什么是路由 路由就是根据不同的 url(网址) 返回不同的页面(数据).如果这个工作在后端做(或者说由后端程序员做),就是后端路由:在前端做就是前端路由. 绝大多数的网站是后端路由.流程就像这样: 浏览器输入 url,回车 后端服务器接收到请求 将请求(url)交给对应的处理逻辑 -- 有一个专门的正则配置列表…