铝交易,微信公众号
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

78 lines
1.3 KiB

<template>
<view class="change-language">
<uv-picker ref="picker"
:columns="languageList"
keyName="name"
:itemHeight="70"
@confirm="confirm"></uv-picker>
</view>
</template>
<script>
export default {
props : {
url : {
default : '/pages/index/index',
type : String,
}
},
data(){
return {
languageList: [
[
{
name:'简体中文',
key : "zh-Hans"
},
{
name:'English',
key : "en"
},
]
],
}
},
methods : {
open() {
this.$refs.picker.open();
},
confirm(e) {
this.changeLanguage(e.value.pop())
},
//修改当前语言
changeLanguage(res){
//#ifdef H5
this.$router.go(0); //刷新页面,不然validate.js不好国际化
//#endif
//#ifdef APP-PLUS
uni.navigateTo({
url: this.url // 要刷新的页面路径
});
//#endif
if(!res.key){
return
}
uni.setStorage({
key: 'language',
data: res.key
})
this.$i18n.locale = res.key
uni.setLocale(res.key) //切换语言环境必须在this.$i18n.locale之后,否则app端会有意想不到的bug
uni.$responseMessage = this.$t('responseMessage')
}
}
}
</script>
<style lang="scss" scoped>
.change-language{
position: relative;
z-index: 999999999;
}
</style>