美文网首页
辛巴的2020年Vue全套教程 学习笔记P1 基础指令

辛巴的2020年Vue全套教程 学习笔记P1 基础指令

作者: 陆碌 | 来源:发表于2021-01-20 11:24 被阅读0次

在b站听《辛巴的2020年Vue全套教程》想着听完课记录一下学习笔记方便自己复习~

初始化

  • 引用js
  • 实例化vm
  • 页面设置id="app"
    三件套

指令

其实把握simba老师讲的2个原则就足够了

原则1:{{}} 只能写在html标签的里面,不能写在标签属性"" 的里面

正确写法√

<div>{{niubi}}</div>

错误写法×

<li v-for="{{arr}}"></li> 

那么我偏要在属性中使用变量怎么办呢?
对了,使用指令
那么使用指令之后发生了什么变化呢?

原则2:书写指令之后""内容变成js格式---变量是变量,字符统一加上' '

下面举例三种绑定属性

  • img
<img :src="item.img" alt="">
  • href
<a :href="'detail.html?name='+item.name">{{item.name}}</a>

这里前半段 'detail.html?name=' 是字符 +后面item.name 是变量。要加以区分

  • style
<li  style="width: 100px;height: 150px;background-color: aqua;"></li>
<li  :style="{width: '100px',height: '150px',backgroundColor: 'aqua'}"></li>

style 的转变比较特殊,加了绑定之后""里面是对象,那么修改之后要做3步骤
1.加{ } ,把字符串的; 改成对象的 ,
2.对象的key 直接写,而值 value 要加'' 比如 {width: '100px'} 如果有变量 {width: w+'px'}
3.key 的值不能有 - ,background-color: aqua; 要改写成 backgroundColor: 'aqua' 驼峰的形式

事件

参照原则2,函数可以直接加(参数) 也可以不加

<button @click="del(i)">删除</button>

methods 中的函数不可以是箭头函数,会影响this的指向

双向绑定

  • 1.把 js中的变量绑定到标签上
英雄 :<input type="text" :value="addHero">
  • 2.给标签绑定事件,来获取标签中的值
英雄 <input type="text" :value="addHero" @input="setHero">
 methods: {
                setHero(e){
                    //e.target指向当前的标签
                    console.log(e.target.value);
                    this.addHero = e.target.value
                }
            }
  • 2.2 参照原则2 来优化一下,把js 语句写到标签中,其中$event 代表上面的 e
英雄 <input type="text" :value="addHero" @input=" addHero = $event.target.value"> 
  • 3.一来一回 是实现了双向绑定,但是比较麻烦,官方使用了v-model
英雄 <input type="text" v-model="addHero">

总结

我之前自己看官网的时候,指令给我的感觉极其复杂,容易写错,又是: 又是@ 又是{{}} 又是 ''
但是听完simba老师的课,牢记两个原则,不在属性里写{{}} 和一旦绑定之后按照 js 的原则去写,这些概念和符号就不会再混淆了
还有双向绑定的部分也挺精彩的,有种小农经济转到工业革命的畅快~

相关文章

网友评论

      本文标题:辛巴的2020年Vue全套教程 学习笔记P1 基础指令

      本文链接:https://www.haomeiwen.com/subject/hgahzktx.html