万普插件库

jQuery插件大全与特效教程

程序员都必掌握的前端教程之VUE基础教程(一)

阅读本文约需要10分钟,您可以先关注我们,避免下次无法找到。

本篇文章成哥继续带大家来学习前端教程之VUE,它是一个前端框架具有高效、简单及易用等特点。下面我们就一起来学习内容吧!

01 VUE简介

Vue (读音 /vju?/,类似于 view) 是一套用于构建用户界面的渐进式框架。

与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用。

Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。

另一方面,当与现代化的工具链以及各种支持类库结合使用时,Vue 也完全能够为复杂的单页应用提供驱动。

该框架的作者是一位中国人叫尤雨溪,毕业于上海复旦附中,在美国完成大学学业,本科毕业于上 Colgate University,后在 Parsons 设计学院获得 Design & Technology 艺术硕士学位,任职于纽约 Google Creative Lab。

目前作者以技术顾问的身份加入了阿里巴巴的 Weex 团队来做 Vue 和 Weex 的 JavaScript runtime 整合,目标是让大家能用 Vue 的语法跨三端。

02 VUE安装

VUE可以像我们之前jQuery教程一样将VUE.js下载下来进行引用,也可以通过CDN方式引用,还可以通过VUE-CLI来安装(VUE-CLI需要通过NPM安装,在后面的教程中成哥将专门推出一篇NPM入门教程,在这边就不详细讲解了),在这边我们登陆到VUE官网来下载VUE.js然后进行引用,具体操作如下:

1.登陆VUE官网下载vue.js文件

2.在HTML文件中引用vue.js文件

1. ??
2. ??
3. ??
4. ??????
5. ????VUE基础教程??
6. ??????
7. ??????
8. ??
9. ??
10. ??
11. ??
12. ??

03 VUE使用

(1)VUE实例

每个 Vue 应用都是通过用 Vue 函数创建一个新的 Vue 实例开始的

1. var?vm?=?new?Vue({??
2. ??//?选项??
3. })??

当创建一个 Vue 实例时,你可以传入一个选项对象,下面我们就来看看怎么通过实例将选项对象渲染在页面的

1. ??
2. ??
3. ??
4. ??????
5. ????VUE基础教程??
6. ??????
7. ??????
8. ??
9. ??
10. ??????
11. ????{{msg}}
?? 12. ?????? 20. ?? 21. ??

上述代码渲染结果如下

每个 Vue 实例在被创建时都要经过一系列的初始化过程——例如,需要设置数据监听、编译模板、将实例挂载到 DOM 并在数据变化时更新 DOM 等。同时在这个过程中也会运行一些叫做生命周期钩子的函数,这给了用户在不同阶段添加自己的代码的机会。比如 created 钩子可以用来在一个实例被创建之后执行代码

1. new?Vue({??
2. ??data:?{??
3. ????a:?1??
4. ??},??
5. ??created:?function?()?{??
6. ????//?`this`?指向?vm?实例??
7. ????console.log('a?is:?'?+?this.a)??
8. ??}??
9. })??
10. //?在实例创建后会输出"a?is:?1"??

也有一些其它的钩子,在实例生命周期的不同阶段被调用,如 mounted、updated 和 destroyed。生命周期钩子的 this 上下文指向调用它的 Vue 实例。VUE实例的整个生命周期如下图所示

(2)模板语法

Vue.js 使用了基于 HTML 的模板语法,允许开发者声明式地将 DOM 绑定至底层 Vue 实例的数据。所有 Vue.js 的模板都是合法的 HTML,所以能被遵循规范的浏览器和 HTML 解析器解析。在底层的实现上,Vue 将模板编译成虚拟 DOM 渲染函数。结合响应系统,Vue 能够智能地计算出最少需要重新渲染多少组件,并把 DOM 操作次数减到最少。

1)插值

a.文本

数据绑定最常见的形式就是使用"Mustache"语法 (双大括号) 的文本插值:

1. Message:?{{?msg?}}??

Mustache 标签将会被替代为对应数据对象上 msg对应的值。无论何时,绑定的数据对象上 msg值发生了改变,插值处的内容都会更新。通过使用 v-once 指令,也能执行一次性地插值,当数据改变时,插值处的内容不会更新。但请留心这会影响到该节点上的其它数据绑定

1. 这个将不会改变:?{{?msg?}}??

b.原始HTML

双大括号会将数据解释为普通文本,而非 HTML 代码。为了输出真正的 HTML,你需要使用 v-html 指令,示例如下

1. ??
2. ??
3. ??
4. ??????
5. ????VUE基础教程??
6. ??????
7. ??????
8. ??
9. ??
10. ??????
11. ????????
12. ??????

{{msg}}

?? 13. ???????? 14. ??????

?? 15. ????
?? 16. ?????? 24. ?? 25. ??

c.属性

双大括号语法不能作用在 HTML标签属性上,需要对标签属性操作,应该使用 v-bind 指令

1. 
??

现在通过v-bind来演示HTML标签属性的设置

1. ??
2. ??
3. ??
4. ??????
5. ????VUE基础教程??
6. ??????
7. ??????
8. ??
9. ??
10. ??????
11. ????????
12. ??????点我??
13. ????
?? 14. ?????? 22. ?? 23. ??

d. javascript 表达式

上面,我们只进行了绑定简单的属性键值。但实际上,对于所有的数据绑定,Vue.js 都提供了完全的 JavaScript 表达式支持

1. {{?number?+?1?}}??
2. ??
3. {{?ok???'YES'?:?'NO'?}}??
4. ??
5. {{?message.split('').reverse().join('')?}}??
6. ??
7. 
??

这些表达式会在所属 Vue 实例的数据作用域下作为 JavaScript 被解析。有个限制就是,每个绑定都只能包含单个表达式,所以下面的例子都不会生效。

1. ??
2. {{?var?a?=?1?}}??
3. ??
4. ??
5. {{?if?(ok)?{?return?message?}?}}??

2)指令

指令 (Directives) 是带有v-前缀的特殊特性,指令的职责是,当表达式的值改变时,将其产生的连带影响,响应式地作用于 DOM。

a.参数

一些指令能够接收一个"参数",在指令名称之后以冒号表示,下面我们通过v-on指令来演示动态改变DOM中渲染的值

1. ??
2. ??
3. ??
4. ??????
5. ????VUE基础教程??
6. ??????
7. ??????
8. ??
9. ??
10. ??????
11. ??????

{{msg}}

?? 12. ??????点我改变上面页面内容?? 13. ????
?? 14. ?????? 29. ?? 30. ??

b. 动态参数

从 2.6.0 开始,可以用方括号括起来的 JavaScript 表达式作为一个指令的参数

1. ?...???

这里的 attributeName 会被作为一个 JavaScript 表达式进行动态求值,求得的值将会作为最终的参数来使用。例如,如果你的 Vue 实例有一个 data property attributeName,其值为 "href",那么这个绑定将等价于 v-bind:href。同样地,你可以使用动态参数为一个动态的事件名绑定处理函数:

1. ?...???

在这个示例中,当 eventName的值为 "focus" 时,v-on:[eventName]将等价于 v-on:focus。


c. 修饰符

修饰符 (modifier) 是以半角句号 . 指明的特殊后缀,用于指出一个指令应该以特殊方式绑定, 例如.prevent 修饰符告诉v-on指令对于触发的事件调用 event.preventDefault()

1. v-on:submit.prevent="onSubmit">...


3)指令缩写

v- 是 Vue.js 中特定的标志,用来识别模板中 Vue 特定的特性。当你在使用 Vue.js 为现有标签添加动态行为时,v- 前缀很有帮助,但是频繁使用到,也会让人感觉不到代码的简洁之道,就会感到不是太人性化。同时,在构建由 Vue 管理所有模板的单页面应用程序时,v- 前缀也变得没那么重要了。因此,Vue 为 v-bind 和 v-on 这两个最常用的指令,提供了特定简写,具体如下

a.v-bind缩写

1. ??
2. ...??
3. ??
4. ??
5. ...??
6. ??
7. ??
8. ?...???

b.v-on缩写

1. ??
2. ...??
3. ??
4. ??
5. ...??
6. ??
7. ??
8. ?...???

它们看起来可能与普通的 HTML 略有不同,但:与@对于attribute名来说都是合法字符,在所有支持 Vue 的浏览器都能被正确地解析。

04 总结

至此我们《VUE基础教程一》就讲完了,下篇内容主要讲解VUE的计算属性与监听器等相关知识,敬请期待。最后如果喜欢本篇文章不要忘了点赞、关注与转发哦!

-END-

@IT管理局专注计算机领域技术、大学生活、学习方法、求职招聘、职业规划、职场感悟等类型的原创内容。期待与你相遇,和你一同成长。

文章推荐:

程序员也需了解的主流云计算网络架构

程序员都必掌握的前端教程之JavaScript基础教程(下)

标签:cdn jquery 

作者:wanpu88 , 分类:插件库 , 浏览:29 , 评论:0

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言

    蜀ICP备2024111239号-20