前言


由于个人十分欣赏博友——小火柴的蓝色理想,他的博文我看了大多数,觉得十分的精彩,然而很多都是看后即忘。我想除了没有经常动手敲代码,更可能是在看的时候忽略了很多细节,因此打算把他的博文通通给“抄袭”下来,各位不要和我一般见识哈^_^

概述

Vue.js是一套构建用户界面的渐进式框架,采用的是自底向上增量开发的设计,核心库只关注视图层,不仅易于上手,还便于和第三方库或既有项目整合。另一方面,当与单文件组件和Vue生态系统支持的库结合使用时,Vue也完全能够为复杂的单页应用程序提供驱动。

下面来解释下,何为渐进式框架,请看下图:

如果只使用Vue最基础的声明式渲染的功能,则完全可以把Vue当做一个模板引擎来使用;

如果想以组件化开发方式进行开发,则可以进一步使用Vue里面的组件系统;

如果要制作SPA(单页应用),则使用VUe里面的客户端路由功能;

如果组件越来越多,需要共享一些数据,则可以使用Vue里的状态管理;

如果想在团队里执行统一的开发流程或规范,则使用构建工具;

所以,可以根据项目的复杂度来自主选择使用Vue里面的功能。

安装

Vue.js有三种获取方式

1、官网直接下载

2、使用CDN(内容分发网络,地址:https://unpkg.com/vue)

3、使用NPM(npm install vue)

获取Vue之后,直接使用script标签引入即可使用

模板插值

对于Vue最简单的应用就是将其当做一个模板引擎,也就是采用模板语法把数据渲染进DOM。Vue使用双大括号语法来进行文本插值,下面的message相当于一个变量或占位符,最终会表示为真正的文本内容。

<div id="app">
{{message}}
</div>

构造器

每个Vue应用都是通过构造函数Vue创建一个Vue的根实例启动的,经常使用vm(ViewModel的简称)这个变量名表示Vue实例。

var vm = new Vue({
//选项
})

在实例化Vue时,需要传入一个选项对象,它可以包含数据、模板、挂载元素、方法和生命周期钩子等选项。

var vm = new Vue({
el:"#app",
data:{
message:"hello world"
}
})

上面为Vue构造函数传入了一个对象,对象中包括el和data这两个参数

【el】

参数el,是element的缩写,用于提供一个在页面上已经存在的DOM元素作为Vue实例的挂载目标;

参数值有两种类型,包括string和HTMLElement;

上例中,el:"#app"表示挂载目标为id是"app"的元素,也可以写成el:document.getElementById("app")

【data】

参数data表示Vue实例的数据对象;

上例中,data:{message:"hello world"}表示的是变量message所代表的真实值为"hello world"

简单实例

下面将Vue的模板插值和构造器结合起来,制作一个简单的实例

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script src="https://cdn.jsdelivr.net/npm/vue"></script>
</head>
<body>
<div id="app">
<h4>{{message}}</h4>
</div> <script>
var vm = new Vue({
el: "#app",
data: {
message: "hello world"
}
})
</script>
</body>
</html>

大家可以直接copy代码到本地上进行查看效果

【数据绑定】

看起来上面的例子跟单单渲染一个字符串模板非常类似,但是Vue在背后做了大量工作。现在数据和DOM已经被绑定在一起,所有的元素都是响应式的。在控制台中修改vm.message的值,可以看到DOM元素相应的更新。

最后


当然,Vue学习的前提是掌握ES6、nodejs以及webpack

Vue入门基础(火柴)的更多相关文章

  1. Vue学习记录第一篇——Vue入门基础

    前面的话 Vue中文文档写得很好,界面清爽,内容翔实.但文档毕竟不是教程,文档一上来出现了大量的新概念,对于新手而言,并不友好.个人还是比较喜欢类似于<JS高级程序设计>的风格,从浅入深, ...

  2. Vue入门基础

    前面的话 Vue中文文档写得很好,界面清爽,内容翔实.但文档毕竟不是教程,文档一上来出现了大量的新概念,对于新手而言,并不友好.个人还是比较喜欢类似于<JS高级程序设计>的风格,从浅入深, ...

  3. vue入门基础知识点测试

    vue入门基础知识点测试 1.文本(值绑定){{var}}----控制<div></div>的值显示当前时间,且1秒更新一次.(可查阅 setinterval 函数,时间Dat ...

  4. VUE 入门基础(8)

    十,组件 使用组件 注册 可以通过以下这种方式创建一个Vue实例 new Vue({ el: '#some-element', }) 注册一个全局组件,你可以使用Vue.component(tagNa ...

  5. VUE 入门基础(7)

    八,事件处理器 监听事件 可以用v-on 指令监听DOM 事件来触发一些javaScript <div id="example-1"> <button v-on: ...

  6. VUE 入门基础(4)

    四,计算属性 基础例子 <div id='example'> <p>0riginal message: "{{message}}"</p> &l ...

  7. 02 . Vue入门基础之条件渲染,列表渲染,事件处理器,表单控件绑定

    vue基础 声明式渲染 Vue.js 的核心是一个允许采用简洁的模板语法来声明式地将数据渲染进 DOM 的系统 Example1 <!DOCTYPE html> <html> ...

  8. VUE 入门基础(9)

    十一,深入响应式原理 声明响应式属性 由于Vue不允许动态添加根级响应式属性,所以你必须在初始化实例钱声明根级响应式属性,哪怕只有一个空值. var vm = new Vue({ data:{ // ...

  9. VUE 入门基础(6)

    六,条件渲染 v-if 添加一个条件块 <h1 v-if="ok">Yes</h1> 也可以用v-else 添加else 块 <template> ...

随机推荐

  1. vue.js学习笔记(一)——vue-cli项目的目录结构

    vue.js是一套构建用户界面的渐进式框架.vue采用自底向上增量开发的设计.vue的核心库只关心视图层,非常容易学习,非常容易与其它库和已有项目整合.vue完全有能力驱动采用单文件组件和vue生态系 ...

  2. 【实战】sqlmap显示有注入却无法爆出库名

    sqlmap爆mssql数据库时采用的语句如下图: 从语句中不难看出,如果关键字select被“(非tamper绕过)处理”了,那sqlmap是无法爆出数据库的,这时我们可以使用原始的猜解法, #判断 ...

  3. 分分钟钟学会Python - 数据类型(dict)

    今日内容 字典(dict) 具体内容 1.字典含义 帮助用户去表示一个事物的信息(事物是有多个属性). 基本格式 data = {键:值,键:值,键:值,键:值,键:值,键:值,} # 练习题 use ...

  4. MySQL数据库 InnoDB引擎 事务及行锁总结

    一.事务 1.事务的四大特性 (1)原子性:事务开始后所有的操作要么一起成功,要么一起失败,整个事务是一个不可分割的整体. (2)一致性:是物开始前到结束后,数据库的完整性约束没有被破坏. (3)隔离 ...

  5. Python学习 day12

    一.@wraps __name__    查看函数的名字 __doc__   查看函数的文档字符串 例: def func(arg): """ 这是一个测试函数,这里是函 ...

  6. OC总结 【OC基础语法相关知识】

    m是OC源文件扩展名,入口点也是main函数,第一个OC程序: #import <Foundation/Foundation.h> int main(int argc, const cha ...

  7. 配置vim插件遇到youcompleteme插件问题解决方案

    今天在Opensuse下配置vim 遇到两个问题 配置插件找到一个很好的博客.学到一些有用技巧 http://hahaya.github.io/2013/07/26/use-vundle.html 但 ...

  8. jsp模板添加URL定位语句

    html的head头中加入以下语句,方便url链接诶编写定位 <base href="${pageContext.request.scheme}://${pageContext.req ...

  9. angular 与 layer 集成过程

    layer 的提示框和弹层确实也好用,在使用angular的前提下,使用layer遇到诸多麻烦,记录下来. 在类型是1页面层,主要问题在遮罩方面,造成无法编辑. 开始:引入layer 样式,angul ...

  10. Firebird execute block 批处理

    火鸟的批处理,效率好高,使用简单. execute block as declare variable i ; begin ) do begin :i = :i + ; insert into m_u ...