{…">

当前位置:首页 > VUE

vue实现文本插值

2026-02-21 14:42:12VUE

Vue 文本插值基础

Vue 中使用双大括号 {{ }} 进行文本插值,将数据绑定到 DOM 元素中。插值内容会自动响应数据变化。

<div id="app">
  <p>{{ message }}</p>
</div>
new Vue({
  el: '#app',
  data: {
    message: 'Hello Vue!'
  }
})

插值中使用 JavaScript 表达式

Vue 的文本插值支持简单的 JavaScript 表达式,但不支持语句或流程控制。

<div id="app">
  <p>{{ message.split('').reverse().join('') }}</p>
  <p>{{ number + 1 }}</p>
  <p>{{ ok ? 'YES' : 'NO' }}</p>
</div>

原始 HTML 插值

使用 v-html 指令可以输出原始 HTML,而不是转义后的文本。

vue实现文本插值

<div id="app">
  <p v-html="rawHtml"></p>
</div>
new Vue({
  el: '#app',
  data: {
    rawHtml: '<span style="color: red">Red Text</span>'
  }
})

属性绑定插值

在 HTML 属性中使用插值,需要使用 v-bind 指令或简写 :

<div id="app">
  <div v-bind:id="dynamicId"></div>
  <button :disabled="isDisabled">Button</button>
</div>

计算属性插值

对于复杂逻辑,可以使用计算属性进行插值。

vue实现文本插值

<div id="app">
  <p>{{ reversedMessage }}</p>
</div>
new Vue({
  el: '#app',
  data: {
    message: 'Hello'
  },
  computed: {
    reversedMessage: function() {
      return this.message.split('').reverse().join('')
    }
  }
})

方法插值

可以在插值中调用方法,但不推荐频繁调用方法,应优先使用计算属性。

<div id="app">
  <p>{{ reverseMessage() }}</p>
</div>
new Vue({
  el: '#app',
  data: {
    message: 'Hello'
  },
  methods: {
    reverseMessage: function() {
      return this.message.split('').reverse().join('')
    }
  }
})

插值修饰符

Vue 提供了一些插值修饰符来改变插值行为。

<div id="app">
  <!-- 只绑定一次,不响应变化 -->
  <p v-once>{{ message }}</p>

  <!-- 防止 XSS 攻击 -->
  <p v-text="message"></p>
</div>

插值中的过滤器

Vue 2.x 支持过滤器,Vue 3 中已移除,可用方法或计算属性替代。

<!-- Vue 2.x -->
<div id="app">
  <p>{{ message | capitalize }}</p>
</div>
// Vue 2.x
new Vue({
  el: '#app',
  data: {
    message: 'hello'
  },
  filters: {
    capitalize: function(value) {
      return value.charAt(0).toUpperCase() + value.slice(1)
    }
  }
})

标签: 文本插值
分享给朋友:

相关文章

vue实现文本替换

vue实现文本替换

Vue 实现文本替换的方法 在 Vue 中实现文本替换可以通过多种方式,包括使用计算属性、方法、过滤器或直接使用字符串替换方法。以下是几种常见的实现方式: 使用计算属性进行文本替换 计算属性适用于…

vue实现文本换行

vue实现文本换行

使用 white-space CSS 属性 通过 CSS 的 white-space 属性控制文本换行行为。设置为 pre-line 或 pre-wrap 可保留换行符并自动换行。 .text…

vue实现文本截断

vue实现文本截断

文本截断的实现方法 在Vue中实现文本截断可以通过多种方式完成,以下是几种常见的方法: CSS方法 使用CSS的text-overflow属性可以简单实现文本截断效果: <div c…

react如何自动复制文本

react如何自动复制文本

使用 Clipboard API React 应用中可以通过 Clipboard API 实现文本自动复制。现代浏览器支持 navigator.clipboard.writeText() 方法,调用时…

react如何获取标签内的文本

react如何获取标签内的文本

获取标签内文本的方法 在React中获取标签内的文本可以通过多种方式实现,具体取决于使用场景和需求。 使用ref获取DOM元素文本 通过React的useRef钩子可以获取DOM元素的引用,从而访…

js实现富文本编辑器

js实现富文本编辑器

使用 contenteditable 属性实现基础富文本编辑器 通过 HTML 的 contenteditable 属性可以让元素变为可编辑状态,这是实现富文本编辑器的基础。 <div i…