• vue基础 组合式和响应式 && 模板语法 && 计算属性


    模板语法 | Vue.js

    根据文档

    组合式和响应式

    响应式

    响应api单网页实例式

    组合式

    组合式api单网页实例

    模板语法

    文本插值 {{msg}}

    最基本的数据绑定形式是文本插值,它使用的是“Mustache”语法 (即双大括号):

    1. <template>
    2. <p>{{ version }}p>
    3. hello vue {{ ver }}
    4. template>
    5. <style scoped>style>
    Attribute 属性绑定

    v-bind:align="align">

    简写因为 v-bind 非常常用,我们提供了特定的简写语法:

    1. <template>
    2. <h3>{{ msg }}h3>
    3. <h3 v-bind:align="ali">{{ msg }}h3>
    4. <h3 v-bind:align="'right'">{{ msg }}h3>
    5. <h3 align="center">{{ msg }}h3>
    6. <h3 :align="ali" :id="'ad'">{{ msg }}h3>
    7. <h3 :align="ali" v-bind:id="ad">{{ msg }}h3>
    8. template>
    9. <style scoped>style>
    布尔型 Attribute

    布尔型 attribute 依据 true / false 值来决定 attribute 是否应该存在于该元素上。disabled 就是最常见的例子之一。

    v-bind 在这种场景下的行为略有不同:template

    当 isButtonDisabled 为真值或一个空字符串 (即 

    动态绑定多个值

    如果你有像这样的一个包含多个 attribute 的 JavaScript 对象:js

    1. const mm = ref({
    2. id: 100,
    3. class: 'ad',
    4. align: 'center'
    5. })

    通过不带参数的 v-bind,你可以将它们绑定到单个元素上:template

    1. <p v-bind="mm">pppppp>
    2. <p :="mm">pppppp>

    使用 JavaScript 表达式

    至此,我们仅在模板中绑定了一些简单的属性名。但是 Vue 实际上在所有的数据绑定中都支持完整的 JavaScript 表达式:template

     
     

    {{ number + 1 }} {{ ok ? 'YES' : 'NO' }} {{ message.split('').reverse().join('') }}

    这些表达式都会被作为 JavaScript ,以当前组件实例为作用域解析执行。

    在 Vue 模板内,JavaScript 表达式可以被使用在如下场景上:

    • 在文本插值中 (双大括号)
    • 在任何 Vue 指令 (以 v- 开头的特殊 attribute) attribute 的值中
      1. <template>
      2. <p>{{ 2 ** 3 }}p>
      3. <p>{{ Math.random() > .5 ? 'yes' : 'no' }}p>
      4. <p>{{ pf(6) }}p>
      5. <p>{{ msg + 1}}p>
      6. <p>{{ msg.split('').reverse().join('').toUpperCase().repeat(pf(3))}}p>
      7. <p>p>
      8. <p :id="`list-${id}`">:id="`list-${id}`"p>
      9. <hr>
      10. <p>p>
      11. <p>p>
      12. <p>p>
      13. template>

      a

    调用函数

    可以在绑定的表达式中使用一个组件暴露的方法:template

    1. <template>
    2. <time :title="toTitleDate(date)" v-bind:datetime="date">
    3. {{ formatDate(date) }}
    4. time>
    5. template>
    6. <style scoped>style>
    动态参数

    --注意,参数表达式有一些约束,
    参见下面“动态参数值的限制”与“动态参数语法的限制”章节的解释
     

    1. <template>
    2. <div v-bind:[n]="v" >动态参数绑定div>
    3. template>
    4. <style scoped>style>

    计算属性

    计算属性是循环的方法,通过computed(fn) 来实现自动响应式,此函数必须返回一个值

    1. <template>
    2. <p>Has published books:p>
    3. <span>{{ author.books.length > 0 ? 'Yes' : 'No' }}span>
    4. <p>{{ok()}}p>
    5. <p>{{aa}}p>
    6. template>
    7. <style scoped>style>

    Class 与 Style 绑定

  • 相关阅读:
    第一章 操作系统概述
    Linux:详细介绍如何挂载?及其命令
    数据结构 3:链表
    MFC中利用CDockablePane实现悬浮窗
    15天深度复习JavaWeb的详细笔记(六)——HTTP、Tomcat、Servlet
    容器技术-Docker的优点
    多态详细讲解(简单实现买票系统模拟,覆盖/重定义,多态原理,虚表)
    c++基本图形绘制
    使用image-map编写校区平面示意图
    你还在找淘宝商品信息查询的接口吗?
  • 原文地址:https://blog.csdn.net/Wdasdasda/article/details/132863710