Vue 2.x 常用知识点笔记(万字笔记)

Vue 2.x 笔记

常用知识点笔记,有错误欢迎指点哦~ 字数超过了一万字,得细品


目录


1.新建Vue实例

// 示例1
new Vue({
    el:'#test',              // element vue的模板
    // data的第一种写法,对象式
    data:{					
        name: 'lhd',
        test:{
            id:1,
            age:19,
        }
    }
})


// 示例2
const vm = new Vue({
    // data的第一种写法,对象式
    data:{					
        name: 'lhd',
        test:{
            id:1,
            age:19,
        }
    }
})
vm.$mount('#test')


// 组件必须用函数式
const vm = new Vue({
// data的第二种写法,函数式
    data:function(){
        return{
            name:'lhd'
        }
    }
})
vm.$mount('#test')

2.阻止生成生产提示

如果使用的是开发版Vue,Vue 在启动时会生成生产提示

// 关闭提示,新建 Vue 实例要在此语句下面
Vue.config.productionTip = false

3.模板语法

3.1 插值语法

用于标签体内容

语法:{ {你要动态变化的数据}}

// 示例:创建 Vue 实例,定义数据name
new Vue({
    el:'#root',      // element
    data:{
        name:lhd
    }
})
// 在 div 标签中插值
<div id='root'> {
  {name}} <div>

3.2 指令语法

用于解析标签属性

3.2.1 单向数据绑定

单向的意思:只能从data流向页面(只能通过修改实例中data的数据改变标签数据)

语法:v-bind:标签属性

v-bind:属性 可以简写成 => :

// 示例:创建 Vue 实例,定义数据url,在 a 标签中插值
// 使用 v-bind: 绑定后,就会把里面的语句当成表达式解析
<a v-bind:href="url">跳转链接</a>     
<a :href="url">跳转链接</a>
3.2.2 双向数据绑定

双向的意思:可以从data流向页面,还可以从页面流向data

语法:v-model:标签属性

v-model:value 可以简写成 => v-model 。 因为默认收集的是value值

注意:v-model 只能应用在表单类元素(输入类元素)上

<input type='text' v-model:value="test">
<input type='text' v-model="test">

4.MVVM模型

1.M:模型(Model) :data 中的数据

2.V:视图(View):模板代码

3.VM:视图模型(ViewModel):Vue 实例

data中的所有属性都出现在 vm 身上

vm 上的所有属性及 Vue 原型上所有属性,在 Vue 模板中都可以直接使用


5.数据代理

5.1 回顾Object.defineProperty方法

// 示例1
let a = {
    name:lhd
}
// 加入age数据
Object.defineProperty(a,'age',{
    value:18
    enumerable:true       // 让数据可枚举
    writable:true         // 让数据可修改
    configurable:true	  // 让数据可删除
})
console.log(Object.keys(a))     //用数组输出数据


// 示例2
let number = 18
let a = {
    name:lhd
}
Object.defineProperty(a,'age',{
    // 只要读取a的age属性是,get函数(getter)就会被调用
    get(){
        return number
    },
    // 只要有人修改age属性,set函数就会被调用
    set(value){
        // 把修改的值赋给number
        number = value
    }
})

5.2 什么是数据代理

通过一个对象代理对另一个对象中属性的操作

// 示例
let obj = {x:100}
let obj2 = {y:200}
Object.defineProperty(obj2,'x',{
    // 访问 obj2.x 可以输出 obj.x 的值
    get(){
        return obj.x
    },
     // 修改 obj2.x 可以修改 obj.x 的值
    set(value){
        obj.x = value
    }
})

5.3 Vue中的数据代理

通过 vm 对象来代理data对象中属性的操作(读/写)

好处:更加方便的操作data中的数据

基本原理:

通过Object.defineProperty() 把data对象所有属性添加到 vm 上。

为每一个添加到vm上的属性,都指定一个getter/setter。

在getter/setter内部去操作(读/写)data中对应的属性。


6.事件处理

6.1 事件的基本使用

语法:v-on:事件

可简写为 => @

事件的回调需要配置在methods上,最终会出现在 vm 上

注意:methods 中配置的函数不要用箭头函数,不然this就不是 vm 了

// 示例1
<div id='root'>
	<button v-on:click="你要执行的东西">1</button>
	<button @click="你要执行的东西">2</button>

// 示例2 传参。假设点击时执行show()函数
	<button @click="show()">3</button>   // 空时默认传事件对象
	<button @click="show(10,$event)">4</button>   // 空时默认传事件对象
</div>
const vm = new Vue({
    el:'#root',
    methods:{
        show(number,event){
            console.log(number)   // 10
            console.log(event)	  // 事件对象
        }
    }
})

6.2 事件的修饰符

Vue中的事件修饰符,可以连续写

1.prevent:阻止默认事件(常用)

2.stop:阻止事件冒泡(常用)

3.once:事件只触发一次(常用)

4.capture:使用事件的捕获模式

5.self:只有event.target是当前操作的元素时才触发事件

6.passive:事件的默认行为立即执行,无需等待事件回调执行完毕

6.3 键盘事件

@keyup 按键按下去抬起来后执行 @keydown 按键按下去就执行

1.Vue中常用的按键别名:

(1)回车 => enter

(2)退出 => esc

(3)空格 => space

(4)换行 => tab (配合@keydown)

(5)上下左右 => up、down、left、right

(6)删除 => delete (捕获 “删除” 和 “退格” 键)

2.Vue未提供别名的按键,可以使用键盘原始的key值去绑定,但要注意转为kebab-case(短横线命名)

例如大小写:CapsLock => caps-lock

3.系统修饰键(用法特殊):ctrl、alt、shift、meta(win键)

(1)配合keyup使用:按下修饰键的同时,再按下其他键,随后释放其他键

(2)配合keydown使用:正常触发

3.也可以使用keyCode去指定具体的按键(不推荐)

4.Vue.config.keyCodes.自定义键名 = 键码 定制别名

// 示例1 回车输出
<div id="root">
	<input type="text"
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 狂神说Vue是由中国前端开发者尤雨溪开发的一款流行的JavaScript框架。Vue具有简洁的语法、高效的性能和灵活的组件化开发模式,因此在前端开发领域得到了广泛的应用和认可。 在《狂神说Vue笔记》这篇文章中,作者整理了对于Vue框架的学习和实践经验,旨在帮助读者更好地理解和运用Vue。文章首先介绍了Vue框架的基本概念和特点,如Vue实例、生命周期、模板语法等。然后详细讲解了Vue的核心功能和常用的基础知识,例如数据绑定、计算属性、事件处理等。接着,文章还介绍了Vue的路由、状态管理和组件化开发等进阶知识,以及常见的一些Vue插件和工具的使用。 文章的写作风格简洁明了,重点突出,对于每个知识点都给予了清晰的解释和实际示例。同时,狂神还根据自己的实际经验提供了一些实战技巧和开发中常见的问题解决方法。这些经验分享不仅有助于初学者快速上手,也为有一定经验的开发者提供了一些新的思路和技巧。 总之,《狂神说Vue笔记》是一篇值得阅读的文章,无论是对Vue框架感兴趣的初学者,还是对于Vue有一定了解的开发者,都可以从中获得一些有益的知识和经验。通过学习这些笔记,读者可以更加深入地了解Vue框架的使用和原理,提升自己的前端开发能力。 ### 回答2: 《狂神说Vue笔记.md》是一份关于Vue框架的学习笔记,由狂神团队撰写而成。这份笔记详细地介绍了Vue的基本概念、核心特性和使用方法。一共包含了20个章节,内容全面且系统。 笔记的第一章主要介绍了Vue的基本概念,包括Vue实例、生命周期、指令等。第二章到第五章则讲解了Vue的模板语法、计算属性、侦听器、样式绑定等。通过学习这些章节,读者可以对Vue的基本语法和使用方式有一个清晰的认识。 接下来的几章介绍了Vue的组件化开发,包括组件的定义、组件之间的通信、插槽等。这些章节详细地介绍了Vue组件的相关概念和使用方法,使读者能够灵活地进行组件化开发。 笔记的后半部分则围绕Vue的高级特性展开,如路由、状态管理、动画等。这些章节深入探讨了Vue的高级用法和扩展性,对于希望进一步深入学习的读者来说非常有帮助。 总的来说,《狂神说Vue笔记.md》是一份非常全面、详细的Vue学习资料。通过学习这份笔记,读者可以系统地掌握Vue框架的基本概念和核心特性,同时也能够了解到一些高级用法和扩展性。这份笔记适合初学者入门,也适合有一定经验的开发者进阶学习。读者可以通过实践和不断深入学习,更好地掌握和应用Vue框架。 ### 回答3: 《狂神说Vue笔记》是一本非常有价值的学习资料。该书以清晰、简明的语言介绍了Vue.js框架的核心概念和使用方法,适合任何想要深入学习Vue.js的开发者。 首先,该书从Vue.js的基本概念开始讲解,包括Vue实例、模板语法和组件等。通过实例代码和说明,读者可以直观地了解Vue.js的基本用法和原理。 其次,该书详细介绍了Vue.js的高级特性,例如Vue组件的通信方式、Vue路由和状态管理等。这些特性是Vue.js框架优势的体现,通过学习这些内容,读者可以更好地运用Vue.js开发复杂的应用程序。 此外,该书还涵盖了Vue.js框架的生态系统,介绍了Vue.js周边的工具和库,例如Vue CLI和Vue Router等。这些工具和库可以帮助开发者更高效地进行Vue.js项目开发,提高开发效率。 总之,通过《狂神说Vue笔记》,读者可以系统地学习和掌握Vue.js框架的核心概念和使用方法。该书内容丰富,重点明确,适合初学者和有一定经验的开发者阅读。无论是想要进一步学习Vue.js还是应用Vue.js进行项目开发,这本书都是不可或缺的参考资料。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值