专业编程基础技术教程

网站首页 > 基础教程 正文

vue: 在页面模板中使用{{js变量}}

ccvgpt 2024-12-22 14:46:23 基础教程 1 ℃

{{}}表达式会返回一个数据值, 肯定没有分号,

它不是完整的js的解析指令, 需要与其它语法组成一条完整的语句。

vue: 在页面模板中使用{{js变量}}

<template>
  <div>
    <!--标签体文本中的{{js表达式}},动态显示文本script中的变量contentText的值-->
    <p>正序: {{contentText}}</p>
    
    <!--可以使用该变量身上的一些语法来操作改变呈现出来的值-->
    <p>倒序: {{contentText.split('').reverse().join('')}}</p>
    
    <!--可以使用js的||,在contentText变量的值为null、''空字符串、等时,显示||右边的值 -->
    <p>javaScript或{{contentText || 'contentText无值时显示'}}</p>
    <p>javaScript或{{contentTextFlag || 'contentText无值时显示'}}</p>
    
    <!--可以使用javaScript中的三元表达式 来判断呈现出来的值-->
    <p>三元表达式: {{contentTextFlag ? contentText : 'contentText值为flase时显示'}}</p>
    
    <!--可以用来显示js的时间数据-->
    <p> {{new Date()}}</p>
  </div>
</template>

<script lang="ts">
import { defineComponent, ref } from "vue";
// 注:此处使用的vue3.0 版本的语法
export default defineComponent({
  name: "组件名",
  setup() {
    const contentTextFlag = ref(false)
    const contentText = ref('这是一行文字')
    return {
      contentTextFlag,
      contentText
    }
  }
})
</script>

页面呈现结果:

vue3.2及以上版本的语法, setup语法糖:

<template>
  <div>
    <!--标签体文本中的{{js表达式}},动态显示文本script中的变量contentText的值-->
    <p>正序: {{contentText}}</p>
    
    <!--可以使用该变量身上的一些语法来操作改变呈现出来的值-->
    <p>倒序: {{contentText.split('').reverse().join('')}}</p>
    
    <!--可以使用js的||,在contentText变量的值为null、''空字符串、等时,显示||右边的值 -->
    <p>javaScript或{{contentText || 'contentText无值时显示'}}</p>
    <p>javaScript或{{contentTextFlag || 'contentText无值时显示'}}</p>
    
    <!--可以使用javaScript中的三元表达式 来判断呈现出来的值-->
    <p>三元表达式: {{contentTextFlag ? contentText : 'contentText值为flase时显示'}}</p>
    
    <!--可以用来显示js的时间数据-->
    <p> {{new Date()}}</p>
  </div>
</template>

<script lang="ts" setup>
import { ref } from "vue";
// 注:此处使用的vue3.2及以上版本的语法 setup语法糖
const contentTextFlag = ref(false)
const contentText = ref('这是一行文字')
</script>

vue2版本的语法:

<template>
  <div>
    <!--标签体文本中的{{js表达式}},动态显示文本script中的变量contentText的值-->
    <p>正序: {{contentText}}</p>
    
    <!--可以使用该变量身上的一些语法来操作改变呈现出来的值-->
    <p>倒序: {{contentText.split('').reverse().join('')}}</p>
    
    <!--可以使用js的||,在contentText变量的值为null、''空字符串、等时,显示||右边的值 -->
    <p>javaScript或{{contentText || 'contentText无值时显示'}}</p>
    <p>javaScript或{{contentTextFlag || 'contentText无值时显示'}}</p>
    
    <!--可以使用javaScript中的三元表达式 来判断呈现出来的值-->
    <p>三元表达式: {{contentTextFlag ? contentText : 'contentText值为flase时显示'}}</p>
    
    <!--可以用来显示js的时间数据-->
    <p> {{new Date()}}</p>
  </div>
</template>

<script lang="js">
// 如果用到ts 可以将便签改为<script lang="ts">
export default ({
  data() {
    return {
      contentTextFlag: false,
      contentText: '这是一行文字'
    }
  },
})
</script>

Tags:

最近发表
标签列表