Vue模板语法插值,使用 JavaScript 表达式

Vue / 555人浏览 / 0人评论

迄今为止,在我们的模板中,我们一直都只绑定简单的 property 键值。但实际上,对于所有的数据绑定,Vue.js 都提供了完全的 JavaScript 表达式支持。

Vue.js 是什么?

Vue是一套用于构建用户界面的渐进式框架。与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。另一方面,当与现代化的工具链以及各种支持类库结合使用时,Vue 也完全能够为复杂的单页应用提供驱动。

如果你已经是有经验的前端开发者,想知道 Vue 与其它库/框架有哪些区别,请查看对比其它框架。

Vue模板语法插值,使用 JavaScript 表达式

以下代码是保存至一个index.html的文档(文件后缀名是.html)中,并非是.vue的文件,当今后学会了一些更vue复杂的应用的时候,比如CLI创建了更复杂的vue应用,并支持单文件组件,那在项目下创建的文件可能就是以.vue为后缀的文件。

迄今为止,在我们的模板中,我们一直都只绑定简单的 property 键值。但实际上,对于所有的数据绑定,Vue.js 都提供了完全的 JavaScript 表达式支持。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Vue模板语法插值,使用 JavaScript 表达式</title>
    <script src="vue.js" type="text/javascript" charset="utf-8"></script>    
</head>
<body>
    <div id="app">
        <!--迄今为止,在我们的模板中,我们一直都只绑定简单的 property 键值。但实际上,对于所有的数据绑定,Vue.js 都提供了完全的 JavaScript 表达式支持。-->        
        
        <span>{{ number + 1 }}</span>

        <span>{{ ok ? 'YES' : 'NO' }}</span>
        
        <span>{{ message.split('').reverse().join('') }}</span>

        <div v-bind:id="'list-' + id"></div>
        <!--
            这些表达式会在所属 Vue 实例的数据作用域下作为 JavaScript 被解析。
            有个限制就是,每个绑定都只能包含单个表达式,所以下面的例子都不会生效。
        -->
        <!-- 这是语句,不是表达式 -->
        <!-- {{ var a = 1 }} -->
        
        <!-- 流控制也不会生效,请使用三元表达式 -->
        <!-- {{ if (ok) { return message } }} -->
        <!-- 
            模板表达式都被放在沙盒中,只能访问全局变量的一个白名单,如 Math 和 Date 。
            你不应该在模板表达式中试图访问用户定义的全局变量。
        -->
    </div>
    <script type="text/javascript">
        var vm = new Vue({
            el: '#app',
            data: {
                message: 'Hello Vue!',
                number: 50,
                ok: 'YES',
                id: 0,
                sitename: '编程之吧',
            }
        });
    </script>
</body>
</html>

转载注明:

0 条评论

还没有人发表评论

发表评论 取消回复

记住我的信息,方便下次评论
有人回复时邮件通知我