guanchunjie 3 yıl önce
ebeveyn
işleme
5e453b4c05
5 değiştirilmiş dosya ile 47 ekleme ve 7 silme
  1. 2 2
      package.json
  2. 2 3
      src/main.js
  3. 2 1
      src/store/getters.js
  4. 3 1
      src/store/index.js
  5. 38 0
      src/store/modules/lang.js

+ 2 - 2
package.json

@@ -17,7 +17,7 @@
     "@tinymce/tinymce-vue": "^3.2.8",
     "awe-dnd": "^0.3.4",
     "axios": "0.18.1",
-    "book-ui": "file:../GCLS-Book-question-ui/book-ui-0.1.30.tgz",
+    "book-ui": "file:../GCLS-Book-question-ui/book-ui-0.2.0.tgz",
     "cnchar": "^3.0.1",
     "cnchar-all": "^3.0.1",
     "cnchar-order": "^3.0.1",
@@ -40,7 +40,7 @@
     "vue": "2.6.10",
     "vue-element-utils": "^0.2.1",
     "vue-esign": "^1.0.5",
-    "vue-i18n": "^8.24.4",
+    "vue-i18n": "^8.24.5",
     "vue-pdf": "^4.3.0",
     "vue-router": "3.0.6",
     "vuedraggable": "^2.24.3",

+ 2 - 3
src/main.js

@@ -32,9 +32,7 @@ Vue.prototype.$jsPlumb = jsPlumb.jsPlumb
 import vcolorpicker from 'vcolorpicker'
 Vue.use(vcolorpicker)
 
-import VueI18n from 'vue-i18n'
-
-Vue.use(VueI18n)
+import i18n from '@/utils/i18n';
 
 /**
  * If you don't want to use mock-server
@@ -72,5 +70,6 @@ new Vue({
   el: '#app',
   router,
   store,
+  i18n,
   render: h => h(App)
 })

+ 2 - 1
src/store/getters.js

@@ -3,6 +3,7 @@ const getters = {
   device: state => state.app.device,
   token: state => state.user.token,
   avatar: state => state.user.avatar,
-  name: state => state.user.name
+  name: state => state.user.name,
+  language_type: state => state.lang.language_type,
 }
 export default getters

+ 3 - 1
src/store/index.js

@@ -4,6 +4,7 @@ import getters from './getters'
 import app from './modules/app'
 import settings from './modules/settings'
 import user from './modules/user'
+import lang from './modules/lang'
 
 Vue.use(Vuex)
 
@@ -11,7 +12,8 @@ const store = new Vuex.Store({
   modules: {
     app,
     settings,
-    user
+    user,
+    lang
   },
   getters
 })

+ 38 - 0
src/store/modules/lang.js

@@ -0,0 +1,38 @@
+import Cookies from 'js-cookie';
+import { getContent } from '@/api/ajax';
+
+const state = {
+  language_type: localStorage.getItem('language_type') || 'ZH'
+}
+
+const mutations = {
+  SET_UPDATE_LANGUAGE_TYPE: (state, language_type) => {
+    localStorage.setItem('language_type', language_type);
+    state.language_type = language_type;
+  },
+}
+
+const actions = {
+  // 用户更换语言类型
+  updateLanguageType({ commit }, language_type) {
+    return new Promise((reslove, reject) => {
+      let MethodName = "login_control-UpdateLanguageType";
+      getContent(MethodName, { language_type })
+        .then(() => {
+          commit('SET_UPDATE_LANGUAGE_TYPE', language_type);
+          reslove();
+        })
+        .catch(error => {
+          reject(error);
+        });
+    });
+  },
+}
+
+export default {
+  namespaced: true,
+  state,
+  mutations,
+  actions
+}
+