vue项目中的常用指令

在views目录中,创建home.vue的文件,我们配置这个文件的路由。

{{ }} 插值表达式 ,等价于 v-text指令

v-text指令 用于将数据填充到标签中

渲染数据中心的数据,显示在 视图层,注意,视图层一定要有一个根节点div

<template>
    <div>
       home.vue 
       <hr>
       <h1 class="title">{{tit}}</h1>
       <h1 v-text="tit"></h1>
    </div>
</template>

<script>
export default {
    name: 'home',
// 初始化数据(初始化数据的地方)
    data() {
        return {
            tit:'李先生' ,
   };
    },

v-html指令 用法和v-text 相似 但是他可以将HTML片段填充到视图层(它可以对字符串中的标签进行渲染解析)

<template>
    <div>
        home.vue
        <hr>
        <h1 v-html="info"></h1>
    </div>
</template>
<script>
export default {
    name: 'home',
    // 数据中心(初始化数据的地方)
    data() {
        return {
           info:'嘿嘿<span style="color:rgb(219, 144, 156);">李先生</span>小芮',
        };
    },

v-on指令

  • 用来绑定事件的

  • 形式如 v-on:事件名字 比如 v-on:click 缩写为 @click

<template>
    <div>
        home.vue
        <hr>
        <button v-on:click="changebg()">点击我,改变页面背景色</button>
    </div>
</template>
<script>
export default {
    name: 'home',
    // 数据中心(初始化数据的地方)
    data() {
        return {

        };
    },
    // 生命周期
    mounted() {
        
    },
    // 方法中心
    methods: {
        changebg(){
            document.body.style.backgroundColor = 'skyblue';
        }    
    },
};
</script>

v-model指令,双向数据绑定的指令,限制在 <input>、<select>、<textarea>、components中使用。

<template>
    <div>
        home.vue
        <hr>
        <div>
            <a v-bind:href="url" target="_blank">腾讯视频</a>
        </div>
        <hr>
        <div>
            <img v-bind:src="pic" alt="" width="300">
        </div>
    </div>
</template>
<script>
export default {
    name: 'home',
    // 数据中心(初始化数据的地方)
    data() {
        return {
           url:'https:/v.qq.com',
           pic:require('./../assets/350.webp'),
        };
    },

条件渲染指令

  • 单路分支渲染---- v-if

<template>
    <div>
        home.vue
        <hr>
        <div>
            <h1 v-if="flag">大高个</h1>
            <br>
            <h1 v-show="isShow">乖哦</h1>
        </div>
    </div>
</template>
<script>
export default {
    name: 'home',
    // 数据中心(初始化数据的地方)
    data() {
        return {
            flag:true,
            isShow:true,
        };
    },

双路分支渲染---- v-if v-else

<template>
    <div>
        home.vue
        <hr>
        <div>
            <h1 v-if="age>=18">
               李大熊,你是成年人!
            </h1>
            <h1 v-else>
               李大熊,你是未成年人!
            </h1>
        </div>
    </div>
</template>
<script>
export default {
    name: 'home',
    // 数据中心(初始化数据的地方)
    data() {
        return {
           age:16,
        };
    },

多路分支渲染---- v-if v-else-if v-else-if v-else

<template>
    <div>
        home.vue
        <hr>
        <div>
            <p>
                你的成绩是{{score}},你是:
                <span v-if="score>90 && score<=100">天才</span>
                <span v-else-if="score>=80 && score<=90">优秀</span>
                <span v-else-if="score>=70 && score<80">良好</span>
                <span v-else-if="score>=60 && score<70">及格</span>
                <span v-else>不及格</span>
            </p>
        </div>
    </div>
</template>
<script>
export default {
    name: 'home',
    // 数据中心(初始化数据的地方)
    data() {
        return {
            score:99,
        };
    },

最后预览效果:(用node在文件中打开看效果)

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值