【Vue】Vue基础知识点介绍(入门级,简单易懂)——day01

导读:本篇文章讲解 【Vue】Vue基础知识点介绍(入门级,简单易懂)——day01,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

大家好,从今天开始,会每天分享vue学习的知识点,一起加油~

【Vue】Vue基础知识点介绍(入门级,简单易懂)——day01

①首先,牢记三个单词   bind绑定,property属性,mount挂载

1、Vue概述

1.1 特点

  • 尤雨溪创造,V2 与 V3流行
  • Vue是一套用于构建用户界面的渐进式框架
  • 结合了angular的指令与react的组件,虚拟dom

1.2 优点

  • 中文文档完备,生态丰富(插件多),上手简单
  • 指令,组件,虚拟dom

2、导入与实例化

step1 引入

<script src="https://cdn.jsdelivr.net/npm/vue@2.6.14/dist/vue.js"></script>

或者引入  

<script src="./js/vue.js"></script>  //需要在目录下放vue.js 文件

step2 模板

<!--模板 -->
<div id="app">
    <h1>{{msg}}</h1>
</div>

step3 实例化

<script>
//实例化
new Vue({
    el:"#app",
    //指定模板返回(element)
    data:{
        msg:"你好~Vue"//指定数据
}
     
})
//el 与data 都是固定写法
</script>

3、指令与模板

指令就是v开头的特殊属性,它的值预期为JavaScript单行表达式。

指令是联系模板与vue实例的桥梁。

3.1特点

  • 可以渲染实例的值 v-text=”msg”
  • 可以使用数学运算v-text=”2+3″
  • 可以使用js表达式v-text=”msg.length”
  • 如果是文本,需要加单引号v-text=” ‘我在中国。’ + msg”

4、vue的实例

var vum = new Vue({...})

//vm就是new Vue创建的实例

5、文本渲染指令

{{}}

<body>
<div id="app">
    <p>{{msg}}</p>
    <p>{{2+3}}</p>
    <h1>{{2+3}}</h1>
    <h2>{{msg.split('').reverse().join(' ')}}</h2>
    <h3>{{2+3>8?'大于':'小于'}}</h3>
</div>

<script src="https://cdn.jsdelivr.net/npm/vue@2.6.14/dist/vue.js"></script>
<script>
new Vue({
    el:"#app",
    data:{
        msg:"人生若如初见!"
}

})

</script>
</body>

v-text

<body>
    <div id="app">
        <p v-text="msg"></p>
        <h1 v-text="2+3"></h1>
        <h2 v-text="msg.split('').reverse().join(' ')"></h2>
        <h3 v-text="2+3>8?'大于':'小于'"></h3>
        <h4 v-text="'我在学前端。'+msg"></h4>
        <h5 v-text="msg.length"></h5>
    </div>

    <script src="./js/vue.js"></script>
    <script>
        var vm = new Vue({
            el: "#app",
            data: {
                msg: "人生若如初见~"
            }
        })
        console.log(vm);  // vm是new  Vue创建一个实例
         //v-text 指令   指令是带有v-前缀的特殊属性
        // 01 渲染 vue的数据
        //02 数学运算
        //03执行js的普通方法split分割,reverse翻转数组,join连接数组为字符串
        //04三元运算(不能使用if ,for等多行命令)
</body>

v-html

<body>
    <div id="app">
        <p v-text="msg"></p>
        <p v-html="msg"></p>
    </div>

    <script src="./js/vue.js"></script>
    <script>
        var vm = new Vue({
            el: "#app",
            data: {
                msg: "人生若如<strong>初见</strong>~"
            }
        })
        console.log(vm);  // vm是new  Vue创建一个实例
    </script>
</body>

6、条件渲染指令

v-if

<body>
    <div id="app">
        <h1>武林大会</h1>
        <p v-if="score > 90">好徒儿,师妹就托付给你了~~~</p>
        <p v-else>去面壁思过三月</p>
    </div>
    <script src="./js/vue.js"></script>
    <script>
        new Vue({
            el: "#app",
            data: {
                score: 35,
            }
        })
    </script>
</body>

v-else

<body>
    <div id="app">
        <h1>武林大会{{score}}</h1>
        <h2 v-if="score >= 90">独孤九剑</h2>
        <h2 v-else-if="score >= 80">葵花宝典</h2>
        <h2 v-else-if="score >= 70">三分归元气</h2>
        <h2 v-else-if="score >= 60">小师妹嫁给你</h2>
        <h2 v-else>赶出师门</h2>
        <input type="text" v-model="score">
    </div>

    <script src="./js/vue.js"></script>
    <script>
        new Vue({
            el: "#app",
            data: {
                score: 35
            }
        })
// 90以上  独孤九剑
//80以上,葵花宝典
//70以上,三分归元气
//60以上,小师妹嫁给你
//其他,赶出师门
    </script>

</body>

v-else-if

<body>
    <div id="app">
        <h1>武林大会{{score}}</h1>
        <h2 v-if="score >= 90">独孤九剑</h2>
        <h2 v-else-if="score >= 80">葵花宝典</h2>
        <h2 v-else-if="score >= 70">三分归元气</h2>
        <h2 v-else-if="score >= 60">小师妹嫁给你</h2>
        <h2 v-else>赶出师门</h2>
        <input type="text" v-model="score">
    </div>

    <script src="./js/vue.js"></script>
    <script>
        new Vue({
            el: "#app",
            data: {
                score: 35
            }
        })
// 90以上  独孤九剑
//80以上,葵花宝典
//70以上,三分归元气
//60以上,小师妹嫁给你
//其他,赶出师门
    </script>

</body>

v-show

<body>
    <div id="app">
        <h1> v-show 和 v-if 区别</h1>
        <p v-if="flag">你好 我是v-if</p>
        <p v-show="flag">hello 我是v-show</p>
    </div>

    <script src="./js/vue.js"></script>
    <script>
        new Vue({
            el: "#app",
            data: {
                flag: false,  //隐藏
                // flag: true,   //会显示

            }
        })

    </script>

</body>

 特点:

  • 隐藏元素以css方式
  • 频繁切换用v-show
  • 少量切换用v-if

【面试题】  v-if 与 v-show 区别

1.都是用来控制显示与隐藏

2.v-if是通过dom操作实现隐藏,v-show通过css方式隐藏

3.频繁切换用v-show ,少量切换用v-if

7、遍历指令

v-for

<body>
    <div id="app">
        <h1> v-for</h1>
        <p v-for="item in list">{{item}}</p>
        <ul>
            <li v-for="(item,index) in list">{{index+1}}--{{item}}</li>
        </ul>
        <p v-for="item in list" v-key="item">{{item}}</p>
    </div>

    <script src="./js/vue.js"></script>
    <script>
        new Vue({
            el: "#app",
            data: {
                list: ["Vue", "React", "Angular"]
            }
        })
// v-key 指令 vue在渲染列表的时候更加优化,v-key的值必须是唯一的
// 不建议用随机或者index
    </script>

</body>

v-for代码运行结果 

【Vue】Vue基础知识点介绍(入门级,简单易懂)——day01

v-for特殊用法

<body>
    <div id="app">
        <h1> v-for</h1>
        <!-- 遍历数字 -->
        <p v-for="item in 10">{{item}}</p>
        <!-- 遍历对象 -->
        <p v-for="item in obj">{{item}}</p>
        <h3 v-for="(item,key) in obj" :v-key="key">{{key}}:{{item}}</h3>
        <!-- 遍历字符串 -->
        <h1 v-for="item in str">{{item}}</h1>
    </div>

    <script src="./js/vue.js"></script>
    <script>
        new Vue({
            el: "#app",
            data: {
                str: "人生若如 初见~~",
                obj: {
                    name: "xian",
                    sex: "nan",
                    fensi: "tibbxli"
                },
            }
        })
// v-key 指令 vue在渲染列表的时候更加优化,v-key的值必须是唯一的
// 不建议用随机或者index
    </script>

</body>

v-for特殊用法 运行结果

 【Vue】Vue基础知识点介绍(入门级,简单易懂)——day01

v-bind:key

  • 值必须是唯一
  • 为了让Vue更好的优化渲染列表

8、属性绑定

v-bind

  • 使用v-bind 指令给html标签动态的绑定属性
  • :title 是 v-bind:title的简写
  • :id是v-bind:id 的简写
  • :key是v-bind:key的简写
<body>
    <div id="app">
        <h1>属性绑定</h1>
        <h1 v-bind:title="str" v-bind:id="s1"> attribute</h1>
        <button :title="str1" :id="s2" :key="'A'">按钮</button>
    </div>
    <script src="./js/vue.js"></script>
    <script>
        new Vue({
            el: "#app",
            data: {
                str: "我爱china",
                str1: "这是个简写",
                s1: "myid",
                s2: "myBtnid"
            }
        })
// v-bind 指令
//:title 指令的参数
//str 指令的值
    </script>

</body>

v-bind运行结果 

【Vue】Vue基础知识点介绍(入门级,简单易懂)——day01

9、事件绑定

v-on

  • 可以使用 v-on 指令 (通常缩写为 @ 符号) 来监听 DOM 事件,并在触发事件时执行一些 JavaScript。
  • v-on:click=”  ”  的简写是 @click=” ” 
<body>
    <div id="app">
        <h1>事件绑定</h1>
        <button v-on:click="num--">{{num}}</button>
        <!-- v-on简写 -->
        <button @click="num+=2">{{num}}</button>
    </div>

    <script src="./js/vue.js"></script>
    <script>
        new Vue({
            el: "#app",
            data: {
                num: 1
            }
        })
    </script>

</body>

10、案例选项卡

css样式

<style>
        .box {
            width: 350px;
            height: 350px;
            border: 1px solid tomato;
        }

        .active {
            color: tomato;
            font-weight: 900;
        }
</style>

js 和 html

<body>
    <div id="app">
        <h1>选项卡</h1>
        <!-- @click 是 v-on:click 的简写 -->
        <!-- :class 是 v-bind:class 的简写 -->
        <button v-on:click="num=1" :class="num==1?'active':''">Vue</button>
        <button @click="num=2" :class="num==2?'active':''">React</button>
        <button @click="num=3" :class="num==3?'active':''">angular</button>
        <div class="box" v-show="num==1">
            Vue的文章列表
        </div>
        <div class="box" v-show="num==2">
            React的文章列表
        </div>
        <div class="box" v-show="num==3">
            angular的文章列表
        </div>
    </div>

    <script src="https://cdn.jsdelivr.net/npm/vue@2.6.14/dist/vue.js"></script>

    <script>
        new Vue({
            el: "#app",
            data: {
                num: 1
            }
        })
    </script>
</body>

今天的分享就到这里了~

【Vue】Vue基础知识点介绍(入门级,简单易懂)——day01

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/46295.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!