8 个回答

本质上,页面上你可以看见文字的地方,都可以填充上占位符。

然后你就明白为什么可以做多套了,因为不同语言环境下,可以按需加载的不同的配置填充进去,而配置又是写在专门的配置文件里面的。

所以填充的时候,你朝里面填充什么语言文字都行,只要电脑上能显示出来。

比如
lang目录有几种语言文件,

'APP_NAME' => '管理后台' // zn
'APP_NAME' =>'admin web' //en

然后就加载这个文件,文中需要根据语言变化的地方输入 APP_NAME就行了

可以使用 navigator 中 language 属性获取浏览器语言

console.log(navigator.language)

如果用的是angular,可以参考 @ngx-translate/core 。

我是这么干的:由于一开始没有考虑多语言,后面说增加多语言。我写了个node脚本,把里面要显示的语言文字替换成目标的语言,当然前提你得有个字典配置。部署的时候不同的语言使用不同的地址访问。

有个插件叫做 i18n, 看你用什么框架,然后在进行这个插件的兼容,其实国际化就是切换不同的语言包,需要国际化的文字是不能写静态的,一般绑定的是变量

用vue的话,推荐vue-i18n,可以设置默认语言,切换语言等等,基本可以满足国际化的需求。
vue-i18n

一种是只需要一些菜单等固定文本的内容,这种比较适合写到配置文件里
很多前端框架后端框架如果支持 i18n 的话都能实现
文件夹language里存放不同语言的文本
类似于

language/en-us     //英文
        /zh-cn     //中文简体
        /zh-tw     //中文繁体

还有一种是直接生成多语言的静态页面, 很多开源的静态文档 或者 gitbook,github 等平台里有类似的应用

/zh-cn/index.html
/zh-tw/index.html
/en/index.html

另外一种是和数据库进行交互,一些需要发布的新闻或者大量文本之类的多语言,这种一般会存到数据库里进行获取
表中一个 lang 字段进行区分即可

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题