库和框架的区别
库:本质上是一些函数的集合。每次调用函数,实现一定的特定的功能,接着把控制权交给使用者
代表:JQuery
jQuery库核心:DOM操作,即:封装DOM操作,简化DOM操作
框架:是一套完整的解决方案,使用框架的时候,需要把你的代码放到框架适合的地方,框架会在合适的实际调用你的·代码。
代表:vue
使用规定了自己的编程方式,是一套完整的解决方案
使用框架的时候由框架控制一切,代码编写者只要按照规则写代码框架的入侵性很高从头到尾;
MVC与MVVM
MVVM是Model-View-ViewModel的简写。它本质上就是MVC 的改进版。MVVM 就是将其中的View 的状态和行为抽象化,让我们将视图 UI 和业务逻辑分开。当然这些事 ViewModel 已经帮我们做了,它可以取出 Model 的数据同时帮忙处理 View 中由于需要展示内容而涉及的业务逻辑
v-bind
v-bind绑定的是动态的表达式,而非固定的字符串,在v-bind后,就可以动态获取数据。
被v-bind修饰的都是动态获取的值。 而非被v-bind修饰的,仅仅是一个字符串
跑马灯
当点击kk按钮,跑马灯效果开始进行,文字滚动消失和显示,循环滚动,点击xx按钮,文字不再滚动,停留在当时显示的文字页面。
<body>
<div id="app">
<input type="button" value="kk" @click="lang">
<input type="button" value="xx" @click="stop">
<h4>{{msg}}</h4>
</div>
<script>
// 在vm实例中,如果要获取data上的数据,或者想调用methods的方法,通过this属性名或this方法名来进行访问,this表示new的实例对象VM
let vm = new Vue({
el: "#app",
data: {
msg:"kkxx",
intervalId:null
},
methods:{
lang(){
if(this.intervalId !=null) return;
// 获取到头的第一个字符
this.intervalId=setInterval( () =>{
var start=this.msg.substring(0,1)
// 获取到后面的所有字符
var end=this.msg.substring(1)
// 重新拼接得到新的字符串,并赋值给this.msg
this.msg=end+start
},400)
},
stop(){//停止
clearInterval(this.intervalId)
//每当清除了定时器之后,需要重新把intervalId设置为null
this.intervalId=null;
}
}
})
// 给按钮绑定一个点击事件 v-on @
// 在按钮的事件处理函数中,写相关业务逻辑代码:拿到msg字符串,然后调用字符串的substring,截取字符串,重新拼接
//
</script>
</body>