直接结合vue-i18n来使用,示例代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>vue-i18n</title>
</head>
<body>
<div id="app">
{{msg}}
<br /><br /> 语言选择:
<select v-model="selected" @change="changeLang()">
<option value="en">English</option>
<option value="zh">简体中文</option>
</select> Selected: {{selected}}
<br /><br />
<p>{{$t("message.hello")}}</p>
<ul>
<li v-for="(item, key) in items" :key="key">{{item.title}}</li>
</ul>
</div>
<script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/vue@2.6.1.js"></script>
<script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/vue-i18n.js"></script>
<script>
// 国际化内容配置
const messages = {
en: {
message: {
hello: "hello world",
li1: "li1",
li2: "li2",
li3: "li3",
},
},
zh: {
message: {
hello: "你好 世界",
li1: "标签一",
li2: "标签二",
li3: "标签三",
},
},
};
const i18n = new VueI18n({
locale: "en",
messages,
});
var app = new Vue({
el: "#app",
i18n,
data: {
msg: "Hello Vue i18n",
selected: "en",
},
computed: {
// 重点: vue 列表数据国际化处理,必须在 computed 中绑定
items: function () {
return [
{
title: this.$t("message.li1"), // 获取 i18n 配置数据
},
{
title: this.$t("message.li2"),
},
{
title: this.$t("message.li3"),
},
];
},
},
methods: {
// 切换语言配置
changeLang() {
i18n.locale = this.selected
},
},
});
</script>
</body>
</html>
网友回复
webrtc进行p2p连接发送的文本音视频文件是否是加密的?
如何让一个可爱的三维动物通过three在浏览器中有表情动作的自然说话?
go与wails如何开发一个高性能的原生桌面应用?
python如何调用openai的api实现知识讲解类动画讲解视频的合成?
html如何直接调用openai的api实现海报可视化设计及文本描述生成可编辑海报?
f12前端调试如何找出按钮点击事件触发的那段代码进行调试?
abcjs如何将曲谱播放后导出mid和wav格式音频下载?
python如何将曲子文本生成音乐mp3或wav、mid文件
python中mp3、wav音乐如何转成mid格式?
js在HTML中如何将曲谱生成音乐在线播放并下载本地?