初学VUE第一天

1:概念

这是一款渐进式框架,几乎消除了DOM操作。
mvvm是前端视图层的开发思想,主要把页面分成了M,V,VM,其中VM是MVVM思想的核心,因为VM是M和V之间的调度着
这里的M保存的是每个页面中单独的数据 ,V就是每个页面中的html结构,VM是一个调度着,分割了M和V,每当V层想要获取和保存数据的时候,都要VM做中间的处理。
前端页面中使用MVVM的思想主要是为了让我们开发更加方便,因为MVVM 提供了数据的双向绑定;
注意:数据的双向绑定是我们的VM提供的
优点:
vue用来开发单页面应用效率是比较高的,速度快,减小服务器压力。
缺点:
初次加载时间比一般页面稍微长一点点,不利于SEO(搜索引擎优化)。

2.内容

el:表示当前我们new的这个vue 实例,要控制也页面上的哪个区域,例如:el:’#id’表示我们选择id为“id”的html元素。
data: data属性中存放的el中要用到的数据,通过vue提供的指令,很方便的把数据渲染到页面中(即渲染差值表达式
中的内容)。
methods:这里面可以定义方法。

3.一些指令

v-cloak:可以解决差值表达式中的闪烁问题。
v-text:无闪烁内容,但会覆盖元素中原本的内容。
v-html:可以存放元素,不会被覆盖。
v-on:事件绑定机制,简写为@。

一个实用性代码:跑马灯效果

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
    </head>
    <body>
        <div id="app">
            <input type="button" id="" value="浪起来" @click="lang"/>
            <input type="button" id="" value="冷静" @click="stop"/>
            <h4>{{msg}}</h4>
        </div>
        <script src="../js/vue2.0.js" type="text/javascript" charset="utf-8"></script>
        <script type="text/javascript">
            new Vue({
                el:'#app',
                data:{
                    msg:'猥琐发育,别浪!!!',
                    jishi:null
                },
                methods:{
                    lang(){
                        if(this.jishi!=null)return;
                        this.jishi =setInterval(() =>{
                                var start = this.msg.substring(0,1)
                                var end = this.msg.substring(1)
                                this.msg = end+start
                        },400)
                    },
                    stop(){
                        clearInterval(this.jishi),
                        this.jishi=null
                    }
                }
            })
        </script>
    </body>

</html>

第一天总结:

当我们在new出的VUE实例中。如果想要获取data上的数据,或者调用methods中方法,必须通过this.数据属性或this.方法名来进行访问,并且会监听自己身上data中所有数据的改变,只要数据一发生变化,就会自动把最新的数据,从data上同步到页面中去,好处就是程序员只需要关心数据,不需要考虑如何重新渲染DOM。

猜你喜欢

转载自blog.csdn.net/weixin_42245213/article/details/82557638