前言


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

概述

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. [转] vagrant学习笔记 - provision

    [From]  https://blog.csdn.net/54powerman/article/details/50684844 从字面上来看,provision是准备,实现的功能是在原生镜像的基础 ...

  2. AHB协议

    AHB2 支持多个Bus Master,例如有三个Master,有四个slave,但是同时只有一个Mater可以拿到Bus的访问权.所以,总线的使用权就需要Master去申请,也就需要一个仲裁器(Ar ...

  3. 转 OGG 部署阶段常见问题

    序号 问题 解决方案1 "2019-04-13 20:23:55 ERROR OGG-00868 Oracle GoldenGate Capture for Oracle, e_db1.pr ...

  4. du及df命令的使用

    在本文中,我将讨论 du 和 df 命令.du 和 df 命令都是 Linux 系统的重要工具,来显示 Linux 文件系统的磁盘使用情况.这里我们将通过一些例子来分享这两个命令的用法. du 命令 ...

  5. Java_方法的定义以及分类

    什么叫方法? 方法也叫做函数,实现某个功能 方法分类: 系统提供的方法: 常用的系统提供的方法:如:nextInt() next() nextDouble() print println()..... ...

  6. 那些H5用到的技术(2)——音频和视频播放

    前言audio标签Web Audio API自动播放的问题背景音乐的实现立即播放的问题SoundJSvideo标签播放样式的问题格式的问题总结 前言 正常情况,除了非常简陋的小功能H5,音乐播放是必不 ...

  7. LinuxShell脚本编程基础1-vi编辑器的使用

    1.输入模式与命令模式的切换 按 [Esc]键 切换到 命令模式: 2.保存与退出 :w mytest.txt 保存文件名 :q 退出 :q! 强制退出 :wq  保存并退出 3.插入文本命令 i 在 ...

  8. Java设计模式之适配器模式(Adapter)

    转载:<JAVA与模式>之适配器模式 这个总结的挺好的,为了加深印象,我自己再尝试总结一下 1.定义: 适配器模式把一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口不匹配而无法 ...

  9. poj 2259 Team Queue

    Team Queue Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 2977   Accepted: 1092 Descri ...

  10. Mybatis 关联查询(二

    一对多的管理查询结果映射   1.进行一对多的查询时候,要在主查询表对应的Po中加入关联查询表对应PO的类的list集合作为属性. public class Orders { private Inte ...