App Framework国际化完全指南:5步让你的应用支持多语言
【免费下载链接】app-frameworkApplications for any device with HTML, CSS and JavaScript - free and open source!项目地址: https://gitcode.com/gh_mirrors/ap/app-framework
App Framework是一款基于HTML、CSS和JavaScript的免费开源应用开发框架,用它构建的Web应用天然支持国际化。本指南将带你快速掌握App Framework多语言配置的核心方法,只需5个简单步骤,就能让你的应用支持英语、德语等多种语言,轻松面向全球用户。
为什么选择App Framework做应用国际化?
App Framework把"让应用支持多语言"这件事简化到了极致:你不需要安装额外的插件,不需要编写复杂的翻译逻辑,只需要准备几个JSON语言文件,再调用一个$lang()方法,剩下的工作框架全部自动完成。应用启动时会自动读取当前语言并显示对应文案,用户的语言选择还会自动保存,下次打开应用依然保持上次的偏好。
第一步:创建语言文件 📁
所有翻译文本都存放在项目的lang/目录下,每个语言对应一个JSON文件,内容为扁平的key: string键值对。这是整个App Framework国际化的核心所在。
参考 demo/lang/en.json 的结构,新建英文语言文件:
{ "emailSubject": "Greetings from Hamburg", "emailBody": "Hello {{username}}!" }再创建德语语言文件lang/de.json:
{ "emailSubject": "Grüße aus Hamburg", "emailBody": "Hallo {{username}}!" }注意到{{username}}了吗?这是App Framework国际化的变量插值语法,翻译文本支持动态参数,非常灵活。添加新的语言文件后,记得重启开发服务器。
第二步:在配置中指定默认语言 ⚙️
打开项目的 config.json,找到国际化相关配置:
defaultLanguage:设置默认语言,例如"defaultLanguage": "en"。默认语言文件是"主文件",所有其他语言文件都会与它对比。defaultLanguageFallback:默认值为false。当设为true时,如果某个语言缺少某个key,会自动回退显示默认语言;设为false时,构建阶段会直接报错提醒你补齐缺失的翻译。
第三步:在页面中调用翻译文本 💬
翻译文本的调用统一使用$lang()方法,在模板和脚本中都可以使用。
在模板中:
<p>{{$lang('emailSubject')}}</p> <p>{{$lang('emailBody', {username: 'Bugs Bunny'})}}</p>在脚本中:
this.$lang('emailSubject') this.$lang('emailBody', {username: 'Bugs Bunny'})$lang()的实现位于 client/app.js,它会在当前语言文件中查找key,找不到时回退到默认语言,优雅处理任何缺失情况。官方完整的用法说明可以参考 docs/language-files.md。
第四步:添加语言切换器 🔄
App Framework国际化的一大亮点是语言切换极其简单:只需要改变$root.language,整个应用就会立即刷新语言。
框架会自动完成三件事:
- 校验新语言是否符合
^[a-z]{2}$格式 - 将选择保存到
localStorage,下次启动自动恢复 - 同步更新Framework7内置组件的文案(弹窗按钮、选择器、提示文字等),连登录界面都会随之切换语言
参考多语言示例页 demo/pages/multiple-languages.vue,使用v-model="$root.language"绑定一个下拉选择器即可实现即时语言切换:
<select @change="updateLanguageText" v-model="$root.language"> <option value="en">English</option> <option value="de">Deutsch</option> </select>语言切换的完整逻辑封装在 client/app.js 的manageLanguagemixin 中。
第五步:构建时自动检查翻译完整性 ✅
最让人省心的是,App Framework在每次构建时都会自动执行语言文件检查,这正是防止国际化"翻车"的保险丝。
检查脚本 scripts/checkLanguageFiles.js 会自动完成:
- 验证每个语言文件都是合法的JSON
- 确认所有key都是字符串类型的键值对
- 将每个文件按key自动排序
- 对比非默认语言与默认语言,缺失的key或多余的key都会明确报错
这意味着只要你漏翻了一句,构建时就会收到清晰的中文提示,绝不会带着残缺的翻译上线。
小贴士:如何维护多语言项目 💡
维护App Framework国际化的最佳实践,是把默认语言文件当作唯一的"翻译基准":任何新增文案只添加在默认语言文件中,然后让构建检查脚本帮你找出其他语言文件中缺失的key,逐条补齐即可。
结语
从创建语言文件到自动检查,App Framework把国际化变成了一件简单而愉悦的事。无论你是想发布一个支持中英双语的应用,还是想覆盖更多国家的用户,按照这5个步骤,你都能快速完成应用多语言配置。现在就去动手试试吧,让世界看到你的应用!
【免费下载链接】app-frameworkApplications for any device with HTML, CSS and JavaScript - free and open source!项目地址: https://gitcode.com/gh_mirrors/ap/app-framework
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考