| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- import zh from '../i18n/zh-CN.js'
- import en from '../i18n/en-US.js'
- import Constants from '../utils/Constants';
- module.exports = {
- //初始化语言设置。在 app.js 里调用这个方法。
- initLang() {
- //先获取是不是已存在语言的设置
- let lang = wx.getStorageSync('lang')
- if (!lang) {
- //如果不存在,设置默认语言为中文
- this.setLang(Constants.lang.langCN)
- }
- },
- //设置语言
- setLang(lang) {
- try {
- wx.setStorageSync('lang', lang)
- } catch (e) {
- console.log('设置语言失败', e)
- }
- },
- //获取语言设置
- getLang() {
- try {
- let lang = wx.getStorageSync('lang')
- return lang;
- } catch (e) {
- console.log('获取语言设置失败', e)
- }
- },
- //获取当前语言下的资源文件
- getLangSrc() {
- let lang = this.getLang();
- if (lang === Constants.lang.langCN) {
- return zh;
- } else if (lang === Constants.lang.langEN) {
- return en;
- } else {
- return zh;
- }
- },
- //设置 NavigationBarTitle
- setNavigationBarTitle(title) {
- wx.setNavigationBarTitle({
- title: title
- })
- },
- /**
- * 设置 tabBar。因为 tabBar 是在 app.json 里写死的,需要使用 wx.setTabBarItem
- * 循环设置 tabBar
- */
- setTabBarLang() {
- let tabBarTitles = this.getLangSrc().tabBarTitles;
- console.log('tabBarTitles', tabBarTitles)
- tabBarTitles.forEach((item, index) => {
- console.log(item, index)
- wx.setTabBarItem({
- index: index,
- text: item,
- success: (res) => {
- console.log('setTabBarItem success', res)
- },
- fail: (err) => {
- console.log('setTabBarItem fail', err)
- }
- });
- });
- },
- }
|