目錄序言
1.element整合
1.1.npm安裝element
1.2.完整引入element
2.element國際化實現
2.1.準備自定義內容檔案
2.2.相容 [email protected]配置
2.3.配置檔案繫結到vue例項中
2.4.測試切換中英文功能
2.5.國際化的使用
2.5.1.template中的常量格式
2.5.2.template中元件屬性的格式
2.5.3.js中的使用
開啟vscode和專案,在終端下執行安裝命令,命令如下:
npm i element-ui -s
在 main.js 中寫入以下內容
import vue from 'vue';
import elementui from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';
vue.use(elementui);
以上**便完成了 element 的引入。需要注意的是,樣式檔案需要單獨引入。
在步驟上分三步,這裡以中英文為例。
在asset資料夾下,新建乙個lang資料夾,在lang資料夾下新建兩個js檔案,en.js和zh.js,作為自定義國際化內容檔案
舉例說明:
en.js檔案內容:
const en =zh.js檔案內容:}export default en;
const zh=}export default zh;
在src目錄下,新建i18n資料夾,在i18n資料夾下新建index.js檔案,作為
element 相容 [email protected],搭配使用能更方便地實現多語言切換的配置檔案
內容如下:
import vue from "vue";工具方法global.js如下:import vuei18n from "vue-i18n";
import locale from "element-ui/lib/locale";
import elementenlocale from "element-ui/lib/locale/lang/en";
import elementzhlocale from "element-ui/lib/locale/lang/zh-cn";
import enlocale from "@/assets/lang/en";
import zhlocale from "@/assets/lang/zh";
// 引入工具函式
import from "@/utils/global";
//vue 使用vuei18n模組
vue.use(vuei18n);
//獲取當前語言(初始化時localstorage裡沒有存語言,預設為瀏覽器當前的語言) getbrowserlang();
const lang = getstorage("lang") || "en";
//引入本地
const messages = ,
zh:
};//建立國際化例項
const i18n = new vuei18n();
locale.i18n((key, value) => i18n.t(key, value));
export default i18n;
// 獲取localstorage修改main,js,加黑部分是新新增的內容export const getstorage = function(key) ;
// 設定localstorage
export const setstorage = function(key, obj) ;
// 移除localstorage
export const removestorage = function(key) ;
// 獲取瀏覽器預設語言
export const getbrowserlang = function() else
return defaultbrowserlang;
};
import i18n from "@/i18n";//國際化新建乙個index.vue檔案import locale from "element-ui/lib/locale/lang/en";
vue.use(elementui, );
tempate內容如下:
}}js內容如下:
methods: ,css中內容如下:),//切換語言
handlesetlang(lang) ,
}
.lang-containervuex中內容如下:.arrow-down }}
// 引入工具函式在store引入配置:import from "@/utils/global";
const state =
const mutations =
}const actions = {}
const getters =
export default ;
import vue from "vue";主要有三個點:import vuex from "vuex";
import dashboard from "./modules/dashboard";
vue.use(vuex);
const store = new vuex.store(
});export default store;
例如:
}例如:
:content="$t('login.login')"需要放在computed才能生效,例如:
computed:未完待續!];},
set: function(v) }},
上一章:vue前端之路(一)---入坑前的準備----
VUE 元件(二)元件通訊
元件關係可分為父子元件通訊 兄弟元件通訊 跨級元件通訊。一 自定義事件 當子元件向父元件傳遞資料時,就要用到自定義事件 子元件用 emit 來觸發事件,父元件用 on 來監聽子元件事件 通過兩個按鈕實現 1 1的效果,在改變元件data中的count後,通過 emit 將值傳給父元件,父元件用v o...
Vue 二 元件間通訊
父元件中定義元素 如job 初始化 data 資料 data function 父元件中子元件標籤中定義並繫結資料 如 job job 等號左邊屬性名需和子元件定義 呼叫的寫法一樣,右邊表示父元件中的資料元素 name name job job namewasreset name event res...
VUE(二 元件與路由)
先來理解main.js import vue from vue import router from router vue.config.productiontip false eslint disable no new new vue vue檔案,在vue中,官網叫它做元件,單頁面的意思是結構,樣...