首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

用vuex翻译v-html指令i18 vue中的管道

在Vue中,v-html指令用于将数据作为HTML解析并渲染到DOM中。而i18是国际化的缩写,是指将应用程序适配到不同的语言和地区。

要使用vuex来翻译v-html指令中的内容,首先需要在Vue应用中安装并配置vuex。Vuex是Vue.js的官方状态管理库,用于集中管理应用的所有组件的状态。

以下是一种可能的实现方式:

  1. 首先,在Vue应用中安装vuex。可以通过npm或yarn安装vuex,并在main.js文件中引入和配置vuex。
代码语言:txt
复制
import Vue from 'vue'
import Vuex from 'vuex'

Vue.use(Vuex)

const store = new Vuex.Store({
  state: {
    language: 'en', // 默认语言为英文
    translations: {
      en: {
        // 英文翻译
        // ...
      },
      zh: {
        // 中文翻译
        // ...
      },
      // 其他语言翻译
      // ...
    }
  },
  mutations: {
    setLanguage(state, language) {
      state.language = language
    }
  },
  getters: {
    translation(state) {
      return state.translations[state.language]
    }
  }
})

new Vue({
  store,
  // ...
}).$mount('#app')
  1. 在需要翻译的组件中,使用vuex的辅助函数mapGetters来获取翻译内容,并使用v-html指令渲染到DOM中。
代码语言:txt
复制
<template>
  <div>
    <div v-html="translatedContent"></div>
  </div>
</template>

<script>
import { mapGetters } from 'vuex'

export default {
  computed: {
    ...mapGetters(['translation']),
    translatedContent() {
      // 假设要翻译的内容存储在data中的content变量中
      const content = this.content
      const translation = this.translation

      // 使用翻译内容替换原始内容
      return content.replace(/{{(.*?)}}/g, (match, key) => {
        return translation[key] || match
      })
    }
  }
}
</script>

在上述代码中,我们通过mapGetters辅助函数将vuex的getter方法映射到组件的计算属性中。然后,在计算属性中,我们获取到当前语言对应的翻译内容,并使用正则表达式将需要翻译的内容替换为对应的翻译结果。

需要注意的是,上述代码中的翻译内容是存储在vuex的state中的translations对象中的,根据当前语言选择对应的翻译内容。

这样,通过vuex的状态管理,我们可以实现在Vue应用中使用v-html指令进行国际化翻译。

推荐的腾讯云相关产品:腾讯云国际化产品,详情请参考腾讯云国际化产品介绍

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Vue开发技巧:清除v-html指令富文本标签

目录前言背景介绍具体实现正则表达式其他用法过滤特定标签替换特定标签移除特定属性处理嵌套标签总结前言你好,我是喵喵侠。今天要分享一个实用Vue技巧,那就是如何使用v-html移除富文本样式。...我在某次实际开发,遇到了后端返回数据包含富文本情况。在列表页,我们可能只需要展示富文本摘要,不带任何样式标签;而在详情页,则需要保留原本富文本格式。...针对这种需求,我们可以使用正则表达式来处理富文本内容,使其在不同场景下满足不同展示需求。背景介绍在Vue项目中,v-html指令可以用来动态地将HTML字符串插入到DOM。...': 标签替换标签,并保留原来属性。//g: 匹配结束标签,并替换为。...,我们了解了如何在Vue项目中使用v-html移除富文本样式,并在不同场景下展示不同内容。

13210

15个 Vue.js 高级面试题

在有条件地渲染组件或元素时,还可以 key 属性来向 Vue 发出有关元素唯一性信号,并确保元素不会被新数据重新修补。 2.你将怎样在模板渲染原始 HTML?...如果你尝试使用 mustache 标记来渲染 HTML,它将以文本字符串形式去渲染,并且不会被解析。要将内容渲染和解析为 html,我们可以使用 v-html 指令,如下所示。...style="color: green;">Vue.js' } }); 输出 Vue.js 如上面的例子所示,v-html 指令解析所有HTML,结果上面的语句将按需渲染。...尽管 v-for 指令在基于 HTML 模板起作用,但是当使用渲染函数时,可以简单地标准 .map() 函数遍历 fruits 数据数组。 10....Vue 生态系统中提供了 Vuex,它是官方状态管理库,也是推荐用于集中存储状态模式。 Vuex 允许维护中央状态。组件将 Vuex 用作响应性数据存储,并在状态更新时进行更新。

3K20
  • Vue.js 实战总结

    这是来自Vue.js官网解释,这里我们不打算再照本宣科把概念翻译一边了,仅就作者使用Vue.js心得体会来做出解释。熟悉ReactJS或者Angular读者可能对此并不陌生。...Vue.js试图一种极简方式来实现以上这些框架带来优势,因此,相比于React和Angular来说,Vue.js更加轻量、简介和优美。...常用指令 Vue.js提供了包括v-for、v-if、v-show、v-bind、v-model、v-on、v-html等内部指令,这里不再细说每一个指令用法,读者可以自行参考文档。...对于vuex内容比较多,大家可以看这里。vuex api。 生命周期方法 Vue.js提供了一套完整组件生命周期钩子方法,你可以在组件生命周期各个阶段做该做事情。...,也算是对这段时间vue.js一个回顾。

    8.2K31

    Vue2笔记

    itemName=octref.vetur 什么是 vue 构建用户界面 vue 往 html 页面填充数据,非常方便 框架 框架是一套现成解决方案,程序员只能遵守框架规范,去编写自己业务功能...vue 指令、组件(是对 UI 结构复用)、路由、Vuexvue 组件库 只有把上面老师罗列内容掌握以后,才有开发 vue 项目的能力!...v-html 指令作用:可以把带有标签字符串,渲染成真正 HTML 内容! 2. 属性绑定指令 注意:插值表达式只能用在元素内容节点中,不能用在元素属性节点中!...条件渲染指令 v-show 原理是:动态为元素添加或移除 display: none 样式,来实现元素显示和隐藏 如果要频繁切换元素显示状态, v-show 性能会更好 v-if 原理是:每次动态创建或移除元素...return 值 在过滤器形参,可以获取到“管道符”前面待处理那个值 如果全局过滤器和私有过滤器名字一致,此时按照“就近原则”,调用是”私有过滤器“ watch 侦听器 侦听器格式 方法格式侦听器

    2K20

    Vue实用手册

    Vue.js-是国内开发者尤雨溪开发js框架,它是实现UI层渐进式框架, Vue借鉴了Angular指令、React组件和props等优点进行设计,从最简单数据处理,到数据交互,到DOM操作,...Vue常用指令 (1)....6. filters 过滤属性 用于数据处理,与ng一样,通过 | 管道符号,支持多重过滤,而且支持给过滤器传参,过滤器本质就是一个函数,自从Vue2.0之后,就已经自带过滤取消,不再支持,用户要想使用...创建,在Vue实例filters属性中指定 B. 使用,依然是管道符号,只有传参方式变了:{{ price | currency('¥','@')}} ?...状态管理Vuex Vuex 是一个专为 Vue.js 应用程序开发状态管理模式,它采用集中式存储管理应用所有组件状态,并以相应规则保证状态以一种可预测方式发生变化,如果需要构建是一个中大型单页应用

    4.7K20

    2018-08-16 好漂亮后台模板附教程vue-element-adminvue-element-admin

    它使用了最新前端技术栈,内置了 i18 国际化解决方案,动态路由,权限验证,提炼了典型业务模型,提供了丰富功能组件,它可以帮助你快速搭建企业级后台产品原型。...本项目技术栈基于 ES2015+、vuevuexvue-router 、axios 和 element-ui,所有的请求数据都使用Mock.js模拟,提前了解和学习这些知识会对使用本项目有很大帮助...同时配套一个系列教程文章,如何从零构建后一个完整后台项目,建议大家先看完这些文章再来实践本项目 手摸手,带你 vue 撸后台 系列一(基础篇) 手摸手,带你 vue 撸后台 系列二(登录权限篇)...手摸手,带你 vue 撸后台 系列三 (实战篇) 手摸手,带你 vue 撸后台 系列四(vueAdmin 一个极简后台基础模板) 手摸手,带你封装一个 vue component 手摸手,带你优雅使用...icon 手摸手,带你合理姿势使用 webpack4(上) 手摸手,带你合理姿势使用 webpack4(下) 如有问题请先看上述使用文档和文章,若不能满足,欢迎 issue 和 pr <p align

    7.6K40

    VUE模板语法以及过滤器和双向数据绑定

    html模板语法: 这是一种基于字符串模板技术,以字符串和数据为输入,通过正则表达式将占位符替换为所需数据方式,构建出完整 HTML 字符串。...1.1.2 html {{ }}方式将数据处理为普通文本,如果要输出html,需要使用v-html指令 示例: 在data定义一个html属性,其值为html data: { html:...'' } 在html取值 1.1.3 属性 HTML属性值应使用v-bind...过滤器 vue允许自定义过滤器,一般用于常见文本格式化,过滤器可用两个地方:双花括号插值与v-bind表达式,过滤器应该被添加在js表达式尾部,使用管道运算符"|" 2.1 局部过滤器 局部过滤器定义...在vue,如果使用vuex,实际上数据还是单向,之所以说是数据双向绑定,这是UI控件来说,对于我们处理表单,vue双向数据绑定用起来就特别舒服了。

    1.8K10

    Vue 2.0实用手册

    Vue简介       Vue是国内开发者尤雨溪开发JavaScript框架,它是实现UI层渐进式框架, Vue借鉴了Angular指令、React组件和props等优点进行设计,从最简单数据处理...Vue常用指令 1....; 6. filters 过滤属性 用于数据处理,通过 | 管道符号,支持多重过滤,而且支持给过滤器传参,过滤器本质就是一个函数,自从Vue2.0之后,就已经自带过滤取消,不再支持,用户要想使用...状态管理Vuex Vuex 是一个专为 Vue.js 应用程序开发状态管理模式,它采用集中式存储管理应用所有组件状态,并以相应规则保证状态以一种可预测方式发生变化,如果需要构建是一个中大型单页应用...在页面文件中新建一个store.js文件,引入vuevuex,并声明使明vuex; (2).

    1.7K20

    vue一些笔记20200603

    vuex action: 尤雨溪在知乎回答了,区分 actions 和 mutations 并不是为了解决竞态问题,vuex 真正限制你只有 mutation 必须是同步这一点,只是为了devtools...https://www.zhihu.com/question/48759748/answer/112823337 vue事件绑定: vue事件绑定,直接绑定给当前元素,打印$eventtarget...路由: router-link、router-view这两个组件其实就是Vue.component注册全局组件。且内部mixin让每个子组件都获取router实例。...数组函数劫持: Vue重写了数组七个会改变原数组方法,函数劫持方法实现,类似下面: let oldArrayMethods = Array.prototype; let arrayMethods...而服务渲染不支持mounted方法,统一放createdv-htmlv-html会造成XSS攻击,使用时候必须确保内容是可信,而且v-html会造成内部子元素都被替换掉。

    31030

    vue课程学习笔记归纳

    列表渲染 v-for指令: 用于展示列表数据 语法:v-for=”(item, index) in xxx” :key=”yyy” 可遍历:数组、对象、字符串(很少)、指定次数(很少) 面试题:...与插值语法区别:v-text会替换掉节点中内容,{{xx}}则不会。 v-html指令: 作用:向指定节点中渲染包含html结构内容。...与插值语法区别: (1).v-html会替换掉节点中所有的内容,{{xx}}则不会。 (2).v-html可以识别html结构。 严重注意:v-html有安全性问题!!!!...//引入Vue核心库 import Vue from 'vue' //引入Vuex import Vuex from 'vuex' //引用Vuex Vue.use(Vuex) const actions...({ actions, mutations, state, }) 组件读取vuex数据:$store.state.sum 组件修改vuex数据:store.dispatch('action

    2.3K40

    Vue2 (一):指令与过滤器

    1、构建用户界面 vue 往 html 页面填充数据,非常方便 2、框架 框架是一套现成解决方案,程序员若想使用只能遵守框架规范,去编写自己业务功能 学习 vue,就是在学习 vue 框架规定用法...vue 指令、组件(是对 UI 结构复用)、路由、Vuexvue 组件库等都是框架一部分 二、vue 两个特性 1、数据驱动视图 概念 在使用了 vue 页面vue 会监听数据变化,...四、指令 1.概念 指令(Directives)是 vue 为开发者提供模板语法,用于辅助开发者渲染页面的基本结构 2.类型 vue 指令按照不同用途可以分为如下 6 大类: ① 内容渲染指令...(3)v-html 指令作用:可以把带有标签字符串,渲染成真正 HTML 内容 ? 2.2 属性绑定指令 注意:插值表达式只能用在元素内容节点中,不能用在元素属性节点中!...4、过滤器注意点 要定义到 filters 节点下,本质是一个函数 在过滤器函数,一定要有 return 值 在过滤器形参,可以获取到“管道符”前面待处理那个值 如果全局过滤器和私有过滤器名字一致

    1.1K51

    迷你版Vue--学习如何造一个Vue轮子

    配套插件 mini-vuex 实现一个迷你版vue 实现功能 全局方法 // 继承MiniVue 产生一个新子类构造函数 MiniVue.extend // 在实例化过程完成后运行 MiniVue.nextTick...$nextTick 指令 v-text v-html v-show v-if v-else v-for v-on v-bind v-model 计算属性 计算属性用法也和Vue一样 生命周期 init...created beforeCompiled compiled destroyed 以上实现功能用法和Vue一模一样 如何阅读源码 阅读源码要带有目的去看 不能毫无目的去看源码 以免掉进无尽细节陷阱而出不来...Vue1.0模块 在Vue主线里和数据双向绑定有关有以下几个模块 Vue构造函数 观察者observer 观察者watcher 指令系统 directive类和directives指令函数集合 DOM...还有3条指令实现过程 其实其他指令即使没实现 也没什么关系 主流程明白即可 MiniVue v0.1 学习Vue源码推荐看这篇文章

    55230

    前端框架VUE——数据绑定及模板语法

    vue 使用基本 html 模板语法,允许开发者声明式地将DOM 绑定至底层 vue 实例数据,所有 vue 模板都是合法 html,所以能被遵循规范浏览器和 html 解析器解析。...二、模板语法 2.1、mustache语法 mustache 翻译为中文,是胡子/胡须。由于 {{ msg }} 两边都有对称大括号,就像人胡须一样,所以就叫做 mustache 语法。...//使用语法 {{msg}} 特点:该指令后面不需要任何表达式,表示元素或组件只渲染一次,不会随数据改变而改变文本。...// v-html 使用语法 给元素添加 v-html 指令后,元素就展示成一个带有超链接百度首页文字。...注意点:新内容 标签又新增内容时,会把原来 msg 内容覆盖掉。

    89220

    WEB前端零基础课-1022本周总结

    vueJs,有很多指令,比如说: v-html,输出html内容 v-bind,用于绑定一些属性之类 v-model,双向绑定 v-if,根据true或是false,来决定是否插入到页面当中,dom节点...,不在页面 v-show,根据true或是false,来决定是否在页面显示,dom节点已经在页面,只是隐藏 vue事件 v-on:click="事件名" 可以简写成 @click="事件名" ....split(),用于把一个字符串分割成字符串数组 .reverse(),用于颠倒数组中元素顺序 .join(),用于把数组所有元素放入一个字符串 v-for,循环指令,就是for循环 <li v-for...,子组件要向父组件去传值,就要用到"自定义事件" $on,监听事件 $emit,触发事件 父组件,在使用子组件地方,直接v-on,来监听它触发 全局自定义指令 Vue.directive 自定义指令...,就是封装好一个函数,通过vue语法来调用 使用方法,v-指令vue-cli脚手架 全局安装 npm install -g vue-cli vueJs在vue-cli里面的文件烈性是 .vue

    1.1K10

    vue-04

    (axios): ajax请求 * vue-router: 路由 * vuex: 状态管理 * vue-lazyload: 图片懒加载 * vue-scroller: 页面滑动相关 * mint-ui...在页面模板中使用{{}}或vue指令 3....Vue对象选项 1). el 指定dom标签容器选择器 Vue就会管理对应标签及其子标签 2). data 对象或函数类型 指定初始化状态属性数据对象 vm也会自动拥有data中所有属性 页面可以直接访问使用...数据代理: 由vm对象来代理对data中所有属性操作(读/写) 3). methods 包含多个方法对象 供页面事件指令来绑定回调 回调函数默认有event参数, 但也可以指定自己参数 所有的方法由...vue对象来调用, 访问data属性直接使用this.xxx 4). computed 包含多个方法对象 对状态属性进行计算返回一个新数据, 供页面获取显示 一般情况下是相当于是一个只读属性

    68520
    领券