框架和库的区别:
框架:是一整套的解决方案,对项目的侵入性比较到,项目如果需要更换框架,则需要重新架构整个项目
例如 : node 中的express
库:(插件):提供某一个小功能,对项目的侵入性比较小,如果某个库无法完成某些需求,可以很容易切换到其他库实现需求。
例如:1. jQuery 切换到zepto
2. 从EJS 切换到art-template
Vue笔记:
1.将来 new 的vue实例,会控制整个元素中的所有内容
2.创建一个Vue的实例
// 当我们导入包之后,在浏览器的内存中,就多了一个Vue实例,要控制页面上的哪个区域
<div id="app">
<p>{{msg}}</p>
</div>
//创建一个Vue的实例
//当我们导入包之后,在浏览器的内存中,就多了一个vue构造函数
var vm = newe Vue({
el:'#app', // 表示,当前我们new的这个vue实例,要控制页面上的哪个区域
data:{ // data属性中,春帆的是el中要用到的数据
msg:'欢迎学习vue' //通过Vue提供的指令,很方便的就能把数据渲染到页面上,程序不在需要手动的操作DOM元素了
}
})
Vue的指令:
<div id="app">
<div>{{msg2}}</div>
<div v-text="msg2"></div>
<div v-html="msg2">1212113</div>
<!-- v-bind :是vue中,提供用于绑定属性的指令 也可以将属性当作变量-->
/*
注意:v-bind指令可以被简写为 :要绑定的属性
v-bind中,可以写合法的JS表达式
*/
<input type="button" value="按钮" v-bind:title="mytile">
</div>
// v-cloak指令
// 当网速比较慢的情况下,页面在加载的过程中会让用户看到未加载的数据,怎么解决?
// 在标签中添加一个 v-cloak指令 他能够解决差值表达式的闪烁的问题
// v-text 表达式 用法和插件表达式一直,但是默认不存在闪烁问题
// v-text 会覆盖元素中原本的内容,但是差值表达式 只会替换自己的这个占位符,不会把 整个元素的内容清空
// 插件表达式 可以在前后放置任意的标签
v-bind指令
var vm = new Vue({
el:"#app",
data:{
msg:"123"
}
})
**************************************************
vue中提供了v-on :指令 事件绑定机制
var vm =new Vue({
el : "#app",
data:{
msg : '123',
msg2 : '<h1>哈哈,我是大大的H1 我大,我骄傲</h1>',
mytile:'这是一个自己定义的title'
},
methods:{
}
})
总结:
- 如何定义一个基本的vue代码结构
- 插值表达式 和 v-text
- v-cloak
- v-html 会覆盖原有元素中的内容
- v-bind 缩写是: Vue提供的属性绑定机制
- v-on 缩写是@ Vue提供的事件绑定机制
vue的事件修饰指令:
<div id="app">
<!-- 使用 .stop阻止冒泡事件 -->
<!-- <div class="inner" @click="divHandler">
<input type="button" value="戳他" @click.stop ="btnhandel">
</div> -->
<!-- 使用 .prevent 用来实现事件的跳转行为-->
<a href="http://www.baidu.com" @click.prevent="linkClick">有问题找百度</a>
<!-- 使用.capture 实现捕获触发机制 -->
<div class="inner" @click.capture ="divHandler">
<input type="button" value="戳他" @click="btnhandel">
</div>
<!-- 使用.self 实现只有点击当前元素时候,才会触发事件处理函数机制 -->
<div class="inner" @click.self ="divHandler">
<input type="button" value="戳他" @click="btnhandel">
</div>
<!-- 使用 .once 只触发一次事件处理函数 -->
<div class="inner" @click.once ="divHandler">
<input type="button" value="戳他" @click="btnhandel">
</div>
<!-- .stop 和 .self的区别
.stop 只会阻止自己身上的冒泡行为的触发,不会触发比人的
-->
<!-- ..prevent 和 .once的区别
.prevent 会阻止事件的跳转行为,一次也不会执行,.once也会阻止跳转事件的跳转行为,但至少会触发一次
-->
</div>