|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 不二如是 于 2018-9-2 12:01 编辑
上一讲我们搞定了过滤器,本次来学习三个很使用的操作。
指令(Directives)是Vue模版中最常用的一项,它带有前缀“v-”,之前的课程中我们已经看到了。
比如,v-if、v-html、v-pre等,指令的职责就是:
当其表达式的值改变时,相应的将某些行为应用到DOM上。
下面我们拿最常用的v-if来举例,创建div:
- <div id="myApp">
- <p v-if="show">一起说:我爱鱼C</p>
- </div>
复制代码
创建Vue实例:
- <script>
- var app = new Vue({
- el:"#myApp",
- data:{
- show:true
- }
- })
- </script>
复制代码
当我们将show对应的值从true改为false,上面那段文本就不见了。
当数据show的值为true,p元素会被插入,为false会被移除。
数据驱动DOM是Vue的核心理念。
所以不到万不得已不要主动操纵DOM,我们只需要维护好数据,Vue会帮你自动处理好DOM。
Vue内置了很多指令,可以快速帮助我们完成DOM操作。
比如,循环渲染,显式与隐藏等,后面我们会详细介绍到。
本次主要掌握两个:v-bind和v-on。
v-bind的基本用途是:
动态更新HTML元素上的属性,比如id,class等。
创建div:
- <div id="myApp">
- <a v-bind:href="url">鱼C主页</a>
- </div>
复制代码
创建Vue实例:
- <script>
- var app = new Vue({
- el:"#myApp",
- data:{
- url:"https://ilovefishc.com/"
- }
- })
- </script>
复制代码
通过v-bind,一个正常的链接就搞定了。
留一个作业,模仿上面的调用,写一个图片的链接,见课后作业3。
上面就是v-bind最基本的用法,更厉害的用法,见后续教程哈~
v-on,用来:
这样我们就可以做一些交互了。
div:
- <div id="myApp">
- <p v-if="show">我爱鱼C</p>
- <button v-on:click="trueLove">显式/隐藏</button>
- </div>
复制代码
vue:
- <script>
- var app = new Vue({
- el:"#myApp",
- data:{
- show:true
- },
- methods:{
- trueLove:function(){
- if(this.show == false){
- this.show = true;
- }
- else{
- this.show = false;
- }
- }
- }
- })
- </script>
复制代码
在button按钮上,使用了v-on:click给该元素绑定了一个点击事件。
在普通元素上,v-on可以监听原生的DOM事件,除了click外,还有dbclick、keyup、mousemove等。
表达式可以是一个方法名,这些方法以函数形式写在Vue实例的methods属性。
函数内的this指向的是当前Vue实例本身,因此可以直接使用this.xxx的形式来访问或修改数据。
this.show = false,把数据修改为false,点击就会移除文本,反之则显示。
语法糖
在JS:实用#JS语法糖系列中科普过JS的,其实Vue同理。
语法糖就是指:
在不影响功能的情况下,添加某种方法实现同样的效果。
Vue的v-bind和v-on指令都提供了语法糖,也可以说是缩写。
比如v-bind,可以省略v-bind,直接写一个“:”:
v-on,可以直接用“@”来缩写:
- <button @click="trueLove">显式/隐藏</button>
复制代码
说白了就是老手必备的装x神奇!
课后作业
1、指令的职责是什么?
2、Vue的核心理念是什么?
3、补充?处代码,完成图片调用:
- <div id="myApp">
- <img ?:src="imgUrl">
- </div>
- <script>
- var app = new Vue({
- el:"#myApp",
- data:{
- ?:"https://i0.hdslb.com/bfs/album/c72530a36fbe6c57c2e14b90942728812f76b27a.png@518w_1e_1c.webp"
- }
- })
- </script>
复制代码
4、v-on监听原生的DOM事件其表达式的方法名写在哪里?
答案:
如果有收获,别忘了评分 :
这位鱼油,如果喜欢Vue,请订阅 专辑( 传送门)( 不喜欢更要订阅 )
|
评分
-
查看全部评分
|