问题标签 [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 回答
120 浏览

javascript - 你如何在 vuejs 中提取翻译后的键/值文本

我有一个 json 文件,里面装满了我正在尝试使用这些翻译的翻译。

首先,这就是我试图调用翻译的方式。

从 './i18n/messages.json 导入消息

但是为了做到这一点,我不知道如何this.messages('TOKEN')工作。

我从来没有处理过翻译代码,所以我问你是否只是翻译列表(messages.json)文件,你将如何从中检索数据以显示文本?

0 投票
1 回答
87 浏览

javascript - 如何访问在 vuejs 中导出的“this.”

我有一些返回简单数据的文件,例如 vuex 的 mutation.js,但通常它们是这样的:

现在,我想访问this.,所以我可以使用 vue-i18n 翻译,this.$t('TRANS_TOKEN')但由于某种原因我无法使用this.我正在考虑将 vue 包含在这个文件中:如果它有效import vue from 'vue',可能会这样做,但我试过了vue.$t(..)它没有

0 投票
1 回答
5186 浏览

javascript - vue.js:597 [Vue 警告]:未定义属性或方法“$t”

我正在尝试实现 vue-i18n Vue-i18n Github,但出现错误:

vue.js:597 [Vue 警告]:未定义属性或方法“$t”

我的 vuejs 2 应用程序运行良好,直到我添加了加注星标的代码,我哪里错了?提前致谢

0 投票
1 回答
5643 浏览

vue.js - Vue.js vuetify i18n:如何动态翻译工具栏项目?

我在本地化组件和视图字符串方面没有任何问题,但我锁定了一种方法来动态本地化工具栏项目(当然还有导航抽屉中的相同项目..

目前它们在 App.vue 中显示为 menuItems[i].title

使用脚本:

我应该使用计算值吗?还是直接在模板中使用 $t() ?

反馈,建议和链接表示赞赏

更新

main.js

语言环境/i18n/en_US

0 投票
2 回答
12914 浏览

javascript - 在 vue.js 中使用语言环境为路由添加前缀(使用 vue-i18n)

我有一个locale.js负责定义用户语言环境的文件。这里是:

我还有一个i18n.js文件负责制作i18n我在初始化我的应用程序时使用的实例。

现在我认为让 URL 以 locale 为前缀会更方便,比如/en/profileor /ru/profile。这样我就可以与已经设置的语言环境共享一个链接。

不知道如何做到这一点。将所有路由设置为子路由并放置/:locale?并不方便,因为路由器尚未初始化(我在初始化根应用程序实例时同时传递i18nrouter实例)。

我怎样才能做到这一点,最好的方法是什么?

0 投票
2 回答
851 浏览

symfony - 如何在 @symfony/webpack-encore 上加载 vue-i18n-loader

我在带有 webpack 的 symfony 4 应用程序上使用 Vue,并且 vue-18n 工作正常。但我想把翻译放在每个文件组件上

我的问题是加载 de 是加载 我尝试加载的vue-i18n-loader可能的方式....有人这样做过吗?谢谢

我的 webpack 文件:

0 投票
3 回答
30320 浏览

vue.js - 推送路由(从 vueJS 移动到 nuxtJS)

我正在将 VueJS 项目转换为 Nuxt.js,但我无法理解 nuxt 如何处理路由。它的文档没有说明推送路线。

使用 VueJS 我在一个组件中有以下内容。

但这在 Nuxt 中没有任何作用。发出警报('hi);在 submitSearch 内触发很好,但我从未被重定向到该路线。

这里的目标是当用户在搜索栏中按下回车键时,重定向到 /search?q=blablabla

编辑:

问题是用户被重定向到/?q=blablabla而不是/search?..

我刚刚意识到这是因为多语言路线有不同的名称。

我将如何推送到动态search命名而不是 ' '的路由名称search__en

0 投票
0 回答
551 浏览

vuejs2 - Vue I18n - 类型错误:无法重新定义属性:$i18n

所以我对此有点疯狂。我真的不明白。

这是我的 app.js 文件的最小版本:

如您所见,我只在代码中添加了 Vue.use(VueI18n)。我在用着:

现在我收到此错误:

类型错误:无法重新定义属性:$i18n

出现此错误的行是源代码中的此函数:

我添加了两个 console.log("VUE:PROTOTYPE") ,令人惊讶的是,第一个返回“未定义”,而第二个由于错误而从未到达。

怎么了?有人有线索吗?

0 投票
0 回答
2382 浏览

vue.js - VueJS:在计算道具和数据道具中使用时 i18n 不更新

我安装了 vue-i18n ( http://kazupon.github.io/vue-i18n/en/ ) 库以在 VueJS 项目中进行本地化。

所以我现在正在尝试使用它,当在语言之间切换时,要更新数据。所以这是我尝试使用它的方式:

示例 1:

示例 2:

组件中的代码如下所示:

示例 1 按预期工作,但我对示例 2 感兴趣。为此,我尝试了两种方案(在代码中的注释中进行了描述),但它们都没有按预期工作。我更感兴趣的是让它在“计算属性”场景中工作。

0 投票
1 回答
324 浏览

javascript - 使用未捆绑的外部全局变量文件

我有一个用于国际化的 JS 文件。我希望能够将此 JS 文件传递​​给客户端以供他们编辑,而无需我重建整个项目。

目前我将此文件保存在静态文件夹中,以便在构建后将其转移到我的 dist 文件夹中(我使用的是 vue-cli-webpack 模板)。

翻译.js

我将它导入到我的 main.js 中,如下所示:

虽然在我的开发环境中,这正是我想要的热重载(更改 translation.js 中的字符串并更新我的应用程序),但是一旦我构建了应用程序并将其放在生产站点上,它将不再热重载。

我怎样才能实现这一目标?