起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8697|回复: 29

[结贴] 如何通过在app选择框中选择语言来动态设置APP得国际化?

  [复制链接]

99

主题

375

帖子

816

积分

高级会员

Rank: 4

积分
816
QQ
发表于 2015-10-28 11:00:36 | 显示全部楼层 |阅读模式
我现在已经做到了在url里面硬写一个language=en_US来实现国际化了,但是再进一步,如何通过一个select框动态设置app的国际化呢?我选择了英文,整个界面的文字就变英文,我设置中文,整个界面的文字就变中文?
发表于 2016-2-29 10:04:25 | 显示全部楼层
本帖最后由 liangyongfei 于 2016-2-29 14:57 编辑
青春败给红颜 发表于 2016-2-24 18:32
我照着做了,可是没有用啊

楼主您好!通过向专业人员请教,正确的动态设置语言的方法应该是:
var url = new justep.URL(window.location.href);
url.setLanguage(xx);
window.location.href=url.toString()

修改当前Url 然后重新发送请求!
URL.getLanguage 是静态方法,而setLanguage是实例方法,必须要new以后才可以调用的!

另外,多语言暂时只支持模式3打包,模式2和模式1暂时是没有支持的!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

12

主题

2627

帖子

2866

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2866
发表于 2015-10-28 15:25:45 | 显示全部楼层
select选择之后, 重新刷新整个页面,并在参数中设置language
回复 支持 反对

使用道具 举报

99

主题

375

帖子

816

积分

高级会员

Rank: 4

积分
816
QQ
 楼主| 发表于 2015-10-28 15:53:08 | 显示全部楼层
hecr 发表于 2015-10-28 15:25
select选择之后, 重新刷新整个页面,并在参数中设置language

select的那个demo我找不到了,能不能做一个最最简单的demo给我看一下
回复 支持 反对

使用道具 举报

发表于 2015-10-29 09:16:33 | 显示全部楼层
kevinnu 发表于 2015-10-28 15:53
select的那个demo我找不到了,能不能做一个最最简单的demo给我看一下

这个需要自己做,自己做一个select,选择语言后通过js将url地址的language参数修改值,刷新即可
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36187
发表于 2015-10-29 09:17:05 | 显示全部楼层
可以下载一个BeX5在在/UI2/portal/pc/login.w中在langs中再添加上英文的,然后在登录的时候选择语言就可以
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

22

主题

62

帖子

320

积分

中级会员

Rank: 3Rank: 3

积分
320
QQ
发表于 2016-2-24 17:29:27 | 显示全部楼层
kevinnu 发表于 2015-10-28 15:53
select的那个demo我找不到了,能不能做一个最最简单的demo给我看一下

国际化这个你做好了么  求教select选择之后有什么操作
回复 支持 反对

使用道具 举报

发表于 2016-2-24 17:47:39 | 显示全部楼层
本帖最后由 liangyongfei 于 2016-2-24 17:49 编辑
青春败给红颜 发表于 2016-2-24 17:29
国际化这个你做好了么  求教select选择之后有什么操作

这个平台的代码是有问题的,
你修改下这个文件:
/UI2/system/lib/base/url.js
在这个方法代码下面添加一个方法
URL.getLanguage = function()

添加方法的代码是:
URL.setLanguage = function(language) {
                return URL._instance().setLanguage(language);
        };

然后执行tools\dist\dist.bat 重新合并js资源

然后就可以在js代码中通过代码
justep.URL.setLanguage('en_US')设置url语言
通过justep.URL.getLanguage();获得url的语言

你好楼主,setLanguage这个现象通过验证是产品缺陷,我们已提交到产品组(内部编号:2016022400043),感谢楼主的支持与配合。
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

22

主题

62

帖子

320

积分

中级会员

Rank: 3Rank: 3

积分
320
QQ
发表于 2016-2-24 18:32:47 | 显示全部楼层
liangyongfei 发表于 2016-2-24 17:47
这个平台的代码是有问题的,
你修改下这个文件:
/UI2/system/lib/base/url.js

我照着做了,可是没有用啊
回复 支持 反对

使用道具 举报

22

主题

62

帖子

320

积分

中级会员

Rank: 3Rank: 3

积分
320
QQ
发表于 2016-2-24 18:42:59 | 显示全部楼层
liangyongfei 发表于 2016-2-24 17:47
这个平台的代码是有问题的,
你修改下这个文件:
/UI2/system/lib/base/url.js

我通过getLanguage()方法获取到的是"en_US",然而我的页面并没有被英语化,这是为甚么呢,其他部分我是照着这个帖子里做的http://www.justep.com/cn/bbs/for ... D%E9%99%85%E5%8C%96
回复 支持 反对

使用道具 举报

发表于 2016-2-25 08:56:37 | 显示全部楼层
青春败给红颜 发表于 2016-2-24 18:42
我通过getLanguage()方法获取到的是"en_US",然而我的页面并没有被英语化,这是为甚么呢,其他部分我是照 ...

那你先使用url参数,就是打包时,首页地址的url后面加上  :  ?language=en_US
也可以先在浏览器上使用 ?language=en_US测试下,应该是可以的!我以前测试过
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2025-7-20 05:30 , Processed in 0.132655 second(s), 25 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表