提交 5e93075c 编写于 作者: KK's avatar KK

格式化代码 & 修复未配置英文名称不显示文本 & 增加路由配置

上级 abe38884
......@@ -66,14 +66,7 @@
</ion-page>
</template>
<script lang="ts">
import {
Vue,
Component,
Prop,
Provide,
Emit,
Watch,
} from "vue-property-decorator";
import { Vue, Component, Prop, Provide, Emit, Watch, } from "vue-property-decorator";
import { settingConfig } from "./config";
import i18n from '@/locale'
@Component({
......@@ -83,27 +76,24 @@ export default class AppSetting extends Vue {
/**
* 用户名称
*
* @type {string}
* @memberof AppSetting
*/
public srfloginname = "";
/**
* 第三方服务
*
* @type {string}
* @memberof AppSetting
*/
public thirdPartyName = this.$viewTool.getThirdPartyName();
/**
* 生命周期
*/
public created() {
let appdata = this.$store.state.appdata;
this.srfloginname = appdata && appdata.context && appdata.context.srfloginname?appdata.context.srfloginname:"" ;
this.$viewTool.setViewTitleOfThirdParty("设置");
this.setViewTitleStatus();
this.initializeData();
}
/**
* 视图数据
*
* @memberof AppSetting
*/
public data: any = {
top: [],
......@@ -113,9 +103,10 @@ export default class AppSetting extends Vue {
/**
* 初始化数据
*
* @memberof AppSetting
*/
public initializeData() {
// console.log(settingConfig);
let data = [];
data.push(...settingConfig.default, ...settingConfig.userCustomize);
// 分类合并
......@@ -133,9 +124,11 @@ export default class AppSetting extends Vue {
if (item.entext) {
if (i18n.locale == "ZH-CN") {
item.showtext = item.text;
} else if (i18n.locale == "EN-US"){
} else if (i18n.locale == "EN-US") {
item.showtext = item.entext;
}
} else {
item.showtext = item.text;
}
});
// 排序规则
......@@ -155,12 +148,14 @@ export default class AppSetting extends Vue {
/**
* 标题状态
*
* @memberof AppSetting
*/
public titleStatus: boolean = true;
/**
* 设置标题状态
*
* @memberof AppSetting
*/
public setViewTitleStatus() {
const thirdPartyName = this.$store.getters.getThirdPartyName();
......@@ -171,6 +166,8 @@ export default class AppSetting extends Vue {
/**
* 退出登录
*
* @memberof AppSetting
*/
public async logout() {
const title: any = this.$t("app.tabpage.sureclosetip.title");
......@@ -196,6 +193,7 @@ export default class AppSetting extends Vue {
/**
* 去登录
*
* @memberof AppSetting
*/
public doLogin(data?: any): void {
// 清除user、token
......@@ -210,6 +208,8 @@ export default class AppSetting extends Vue {
/**
* 清除缓存
*
* @memberof AppSetting
*/
public async clear() {
const result = await this.$notice.confirm("清除缓存", "清除缓存可能会导致当前登录信息失效!!!");
......@@ -220,6 +220,8 @@ export default class AppSetting extends Vue {
/**
* 主题切换
*
* @memberof AppSetting
*/
public changeTheme() {
let changeTheme: any = this.$refs.changeTheme;
......@@ -230,6 +232,8 @@ export default class AppSetting extends Vue {
/**
* 个人中心
*
* @memberof AppSetting
*/
public userCenter() {
const { context, param } = this.$store.getters.getAppData();
......@@ -250,6 +254,7 @@ export default class AppSetting extends Vue {
/**
* 模态打开
*
* @memberof AppSetting
*/
private async openPopupModal(view: any, context: any, param: any): Promise<any> {
const result: any = await this.$appmodal.openModal(view, context, param);
......@@ -261,33 +266,35 @@ export default class AppSetting extends Vue {
/**
* 语言列表
*
* @memberof AppSetting
*/
public lanArray:any;
public lanArray: any;
/**
* 切换语言
*
* @memberof AppSetting
*/
public changeLanguage(){
let lanarr:any = localStorage.getItem('lanArray');
public changeLanguage() {
let lanarr: any = localStorage.getItem('lanArray');
this.lanArray = JSON.parse(lanarr);
this.lanArray = this.lanArray.map( (language:any) => language.indexOf("ZH-CN") > -1 ? language.replace("ZH-CN","EN-US") : language.replace("EN-US","ZH-CN"));
this.lanArray = this.lanArray.map((language: any) => language.indexOf("ZH-CN") > -1 ? language.replace("ZH-CN", "EN-US") : language.replace("EN-US", "ZH-CN"));
i18n.locale = this.lanArray[0];
localStorage.setItem('local',this.lanArray[0]);
localStorage.setItem('lanArray',JSON.stringify(this.lanArray)) ;
localStorage.setItem('local', this.lanArray[0]);
localStorage.setItem('lanArray', JSON.stringify(this.lanArray));
// 提示框
if (this.lanArray[0] === "ZH-CN") {
this.$notice.success('已切换为中文!');
} else if (this.lanArray[0] === "EN-US"){
} else if (this.lanArray[0] === "EN-US") {
this.$notice.success('已切换为英文!');
}
Object.keys(this.data).forEach((items: any) => {
// 多语言处理
this.data[items].forEach((item:any)=>{
this.data[items].forEach((item: any) => {
if (item.entext) {
if (i18n.locale == "ZH-CN") {
item.showtext = item.text;
} else if (i18n.locale == "EN-US"){
} else if (i18n.locale == "EN-US") {
item.showtext = item.entext;
}
}
......@@ -298,6 +305,8 @@ export default class AppSetting extends Vue {
/**
* item点击事件
*
* @memberof AppSetting
*/
public onItemClick(item: any) {
// 内置功能
......@@ -311,15 +320,30 @@ export default class AppSetting extends Vue {
this.logout();
} else if (item.name == "clear") {
this.clear();
} else if (item.name == "language"){
} else if (item.name == "language") {
this.changeLanguage();
} else {
// 自定义功能
if (item.viewName) {
if (item.path) {
this.$router.push(`/viewshell/null/${item.path}`);
} else if (item.viewName) {
this.openPopupModal({ viewname: item.viewName }, {}, {});
}
}
}
/**
* 生命周期
*
* @memberof AppSetting
*/
public created() {
let appdata = this.$store.state.appdata;
this.srfloginname = appdata && appdata.context && appdata.context.srfloginname ? appdata.context.srfloginname : "";
this.$viewTool.setViewTitleOfThirdParty("设置");
this.setViewTitleStatus();
this.initializeData();
}
}
</script>
<style lang="less">
......
......@@ -118,6 +118,8 @@ export const settingConfig = {
// sort: "201",
// 打开视图名称
// viewName: "",
// 路由路径
// path: "",
// },
],
};
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册