当前位置:首页 > 技术分析 > 正文内容

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

ruisui883个月前 (02-03)技术分析17

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

它不是完整的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>

扫描二维码推送至手机访问。

版权声明:本文由ruisui88发布,如需转载请注明出处。

本文链接:http://www.ruisui88.com/post/1518.html

标签: vue 多页面
分享给朋友:

“vue: 在页面模板中使用{{js变量}}” 的相关文章

Vue组件通信之props深入详解!

props 是 Vue 组件中一个很重要的概念。它是用来从父组件向子组件传递数据的。为什么需要props?这是因为在Vue中,组件是相互隔离的。每个组件都有自己的作用域,子组件无法直接访问父组件的状态或值。通过props,父组件可以将数据传递给子组件。使用props的步骤:1. 在子组件中定义pro...

vue中组件之间的通信方式

** 1.1 父子组件**a. 父向子传数据: 第1种: 父通过属性传值,子组件通过props接收数据(注:props传过来的数据是单向的,不可以进行修改)第2种:子组件可以通过$parent来获取父组件里的数据和调用父组件的方法(注:数据是双向的,还要注意如用了UI组件并且在该UI组件里重新定义一...

2024最新版:前端性能优化方案汇总

前端训练营:1v1私教,终身辅导计划,帮你拿到满意的 offer。 已帮助数百位同学拿到了中大厂 offer。欢迎来撩~~~~~~~~Hello,大家好,我是 Sunday。前端性能优化一直是很多同学非常关注的问题,在日常的面试中也是经常会被问到的点。所以今天咱们就花一点时间来了解一下2024最新的...

JS数组过滤元素的方法

引言JavaScript 作为前端开发的核心技术之一,在现代 Web 开发中扮演着举足轻重的角色。随着 Web 应用越来越复杂,高效处理数据集合的需求日益凸显。本文旨在介绍 JavaScript 中数组过滤的基础知识及其在实际项目中的应用技巧。技术概述定义数组过滤是 JavaScript 提供的一种...

Vue2的16种传参通信方式

前言先直入主题列出有哪些传参方式,下面再通过事例一一讲解。props(父传子)$emit与v-on (子传父)EventBus (兄弟传参).sync与update: (父子双向)v-model (父子双向)ref$children与$parent$attrs与$listeners (爷孙双向)pr...

vue3使用vue-router路由(路由懒加载、路由传参)

vue-router 是 vue的一个插件库1. 专门用来实现一个SPA单页面应用2 .基于vue的项目基本都会用到此库SPA的理解1) 单页Web应用(single page web application,SPA)2) 整个应用只有一个完整的页面3) 点击页面中的链接不会刷新页面, 本身也不会向...