Vue中的指令 & 判断、循环

2、Vue基本语法

2.1 常用指令,v-

在 Vue 中,v-开头的被称为指令,表示他们是Vue提供的特殊特性。他们会在渲染的 DOM 上应用特殊的响应式行为。

2.1.1 v-bind

<!DOCTYPE html>
<html lang="en" xmlns:v-bind="http://www.w3.org/1999/xhtml">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<div id="app">
    <span v-bind:title="message">
        当鼠标悬浮上去的时候,会有提示信息
    </span>
</div>
<script src="https://cdn.jsdelivr.net/npm/vue@2.5.21/dist/vue.min.js"></script>
<script>
    let vm = new Vue({
        el: "#app",
        data: {
            message: "页面创建与" + new Date().toLocaleString()
        }
    })
</script>
</body>
</html>	

在这里, v-bind指令的意思是: “将这个元素节点的 title 属性和 Vue 实例的 message 属性绑定,使他们的信息保持一致。

如果你再次打开浏览器的控制台,输入vm.message = “新消息”,就会再一次看到这个绑定了 title 特性的 HTML 进行了更新。
在这里插入图片描述

2.1.2 v-if, v-else

没什么好说的,直接上代码吧!

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>

<!-- view层 模板 -->
<div id="app">
    <!-- 注意书写格式 -->
    <h1 v-if="scale > 90">优秀</h1>
    <h1 v-else-if="scale > 80">良好</h1>
    <h1 v-else-if="scale > 70">还行</h1>
    <h1 v-else-if="scale > 60">合格</h1>
    <h1 v-else>不合格</h1>
</div>

<script src="https://cdn.jsdelivr.net/npm/vue@2.5.21/dist/vue.min.js"></script>
<script>
    // 新建 Vue 对象
    let vm = new Vue({
        el: "#app",
        data: {
            scale: 100
        }
    })
</script>
</body>
</html>

2.1.3 v-for

注意书写格式就好,跟 java 里的 forEach 循环有点像,只是将 “:” 改成了 in

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<!-- view层 模板 -->
<div id="app">
    <li v-for="item in items">
        {{item.name}}
    </li>
</div>

<script src="https://cdn.jsdelivr.net/npm/vue@2.5.21/dist/vue.min.js"></script>
<script>
    // 新建 Vue 对象
    let vm = new Vue({
        // 绑定元素
        el: "#app",
        data: {
            items: [
                {name: "张三"},
                {name: "李四"},
                {name: "王五"}
            ]
        }
    })
</script>
</body>
</html>

如果想再循环的时候获取元素索引,可以这样写

<li v-for="(item, index) in items">
    {{item.name}} --- {{index}}
</li>

2.1.4 v-on 事件绑定

不知道有什么事件可以查,查jQuery的事件

函数需要定义到 Vue 的 methods 中,通过 v-on 绑定

<!DOCTYPE html>
<html lang="en" xmlns:v-on="http://www.w3.org/1999/xhtml">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<!-- view层 模板 -->
<div id="app">
    <!-- 不知道有什么事件可以查,可以查jq的事件 -->
    <button v-on:click="sayHi">点击我</button>
</div>

<script src="https://cdn.jsdelivr.net/npm/vue@2.5.21/dist/vue.min.js"></script>
<script>
    // 新建 Vue 对象
    let vm = new Vue({
        el: "#app",
        data: {
            message: "hello Vue"
        },
        methods: { // 将函数定义到 Vue 的 methods 中,通过 v-on 绑定
            sayHi: function () {
                alert(this.message)
            }
        }
    })
</script>
</body>
</html>		
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值