问题标签 [vue-i18n]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
185 浏览

vue.js - 如何使 Vuejs 中的路由与库 i18n 一起使用?

我正在制作一个页面,您可以在其中使用库 vue-i18n 选择语言。当我想要儿童路线时,问题就出现了。

它不加载子路由。但如果我在没有孩子的情况下这样做,它就会被加载。

另外显示的错误是:您正在使用仅运行时构建的 Vue,其中模板编译器不可用。要么将模板预编译为渲染函数,要么使用包含编译器的构建。

我搜索了这个错误,解决方案是:

但我不使用 webpack

这是我的代码(路由器)

应用程序.vue

我从 i18n 文档中看到的代码:https ://github.com/dobromir-hristov/vue-i18n-starter

0 投票
1 回答
1013 浏览

vue.js - vue-i18n:带有 html 标签的组件插值

我正在使用此处描述的组件插值,但我的翻译字符串中还有一些 html 标记用于格式化目的。我应该如何处理?

我的 .yml 文件中的相应键如下所示:

0 投票
1 回答
534 浏览

javascript - 使用 Vue.extend 时使用来自 SFC 的 I18n 翻译消息

我正在开发一个要迁移到 VueJS 的应用程序,因此某些部分正在使用旧的 jQuery 代码。

所以我正在尝试使用 jQuery 附加一个 VueJS 组件,所以我做了

一切正常,但是当我进入附加此组件的页面时,i18n 返回错误

无法翻译 keypath 'tooltip.default' 的值。使用 keypath 的值作为默认值。

i18n仅供参考,我的翻译消息是在我的 SFC 中使用关键字直接定义的

然后我直接在证监会内部使用this.$t('tooltip.default')

我的 i18n 像文档说的那样是导入的,但是在vue.js我用来创建我的组件之后加载。

vue.js文件是我放置所有Vue.use()定义、路由器和其他东西的文件,用于在另一个文件中创建 Vue 实例

你有解决这个问题的想法吗?

我尝试在 vue 组件之前加载 i18n 但没有成功,我看到很多 GitHub 问题与此错误有关,但与我的情况不同。

0 投票
1 回答
359 浏览

uikit - 在 NUXT 中更改语言环境更改的样式表

我正在尝试将样式表从更改ltr为更改rtl语言环境。该网站在UIKIT, vue-i18nNUXT.

是我找到的最接近我想要的东西,但仍然不知道如何解决。

请帮忙。

0 投票
3 回答
6349 浏览

javascript - 如何使用 vee-validate 和 vue-i18n 翻译字段名称

在我看来,关于 i18n 与 vee-validate 集成的文档是不完整的。如果我将 i18n 与 vee-validate 一起使用,我仍然无法弄清楚如何翻译字段名称。

这是我的 main.js:

但问题是 - 我如何翻译属性?我试过了:

attributes.js 的内容:

输入:

但没有成功,即使消息没有被翻译,如果我添加:

代替:

0 投票
0 回答
720 浏览

vue.js - vue i18n 语言环境未更新

我对 Vue 很陌生。我想根据 env 文件中的值从 firebase 检索语言环境。我不清楚必须在哪里对 firebase 进行异步调用。(我正在使用 nuxt)

store/index.js

middleware/i18n.js

plugins/index.js

0 投票
2 回答
4477 浏览

typescript - 如何将 vue-i18n 与 Vue 类组件一起使用?

以下代码:

引发错误:

[Vue warn]: Error in data(): "TypeError: i18n is undefined"

我确保使用Vue.use(VueI18n)和初始化 Vue new Vue({ /* ... */, i18n })。对象以这种i18n方式初始化:

只要不立即调用翻译,就可以完美地工作,例如在模板或组件方法中。

这个vue-i18n 问题似乎暗示存在初始化问题。
我可以通过使用方法并仅在模板中进行翻译来解决此问题,但是有一个不受我控制的特定实例会发生这种立即调用:Vuetify input rules

这些规则会立即执行,即使lazy-validationVuetify forms上也是如此。

我已经确定了两种可能的解决方案:

  1. 绕过 Vuetifyrules系统并允许简单地返回要在模板本身内翻译的字符串;
  2. 解决$t即时可用性问题。

可悲的是,我无法完成其中任何一项。

有没有办法解决这个问题?

0 投票
1 回答
647 浏览

vue.js - Vue - 单个文件组件中的翻译

我正在使用vue-i18n我的翻译,效果很好!但是当我在单个文件组件的函数中使用该this.$t()函数时data,翻译不起作用。

但是,如果我data只使用翻译键进行更改,然后在我的模板中使用例如{{ $t('footer.what_is_pinshop') }}加载的翻译是正确的。为什么会这样?我正在使用beforeEnter路由器保护来更改翻译。我遵循了这个例子

更新

如果我将links其作为计算属性,则翻译有效。那么为什么它不仅仅发生在data财产中呢?我也试过了this.$i18n.t(),但没有

0 投票
1 回答
538 浏览

javascript - 让 VueI18n 对路由器链接标签做出反应

我有这个 Vue 应用程序,它由一个简单的主页、一个标题和一个主页文本组成。你可以在我的JSFiddle上在线查看这个应用程序。这是代码:

HTML

JavaScript

问题

如您所见,没有可见的“路由器链接”链接,单击该链接不会重定向到所需的路由。

问题

是否可以让 VueI18n<router-link>在指令中解释标签v-html

0 投票
1 回答
146 浏览

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

我正在使用vuex-i18n包。基本上我正在通过过滤器管道翻译我的大部分内容,如下所示:

但有时我需要翻译实际上只是 html 的文本,然后像这样绑定它:

但这不适用于管道:

上例中的段落是:

<p class="balears__text">Jest największym miastem Majorki, kosmopolityczną stolicą Balearów i prężniedziałającym, śródziemnomorskim ośrodkiem turystycznym.</p><p class="balears__text"> Katedra La Seu to zdecydowanie najsłynniejsza budowla Palmy. Ta gotycka świątynia z elementami architektury zaprojektowanej przez słynnego Gaudiego stanowi wizytówkę miasta i jest symbolem całej wyspy. </p><p class="balears__text"> Nieopodal katedry znajduje się pałac królewski La Almudaina. Spacer po komnatach i dziedzińcu sprawi, że poczujesz się, jakbyś wędrował po tych zabudowaniach w czasach ich świetności. </p><p class="balears__text"> Doskonałym pomysłem na rodzinne popołudnie jest wizyta w jednym z największych kompleksów akwariowych na świecie. W Palma Aquarium możesz przeżyć niesamowitą przygodę, nurkując z rekinami w najgłębszym zbiorniku w Europie, tzw. Big Blue. </p>