main.js 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. import App from "./App";
  2. import Vue from "vue";
  3. // 挂载全局工具类
  4. import utils from "./utils/index.js";
  5. Vue.prototype.$utils = utils;
  6. uni.$utils = utils;
  7. // 全局统一样式的对话框
  8. import Fy from '@/js_sdk/fy-showModal/index.js'
  9. uni.$eShowModal = (e = {}) => {
  10. return Fy.showModal(e)
  11. };
  12. // 全局混入
  13. import AppMixin from "@/common/mixins/index.js";
  14. Vue.use(AppMixin);
  15. // 全局过滤器
  16. import AppFilters from "@/common/filters/index.js";
  17. for (let fKey in AppFilters) {
  18. Vue.filter(fKey, AppFilters[fKey]);
  19. }
  20. // 引用tmUI2.x框架
  21. import tmVuetify from "./tm-vuetify";
  22. Vue.use(tmVuetify);
  23. // i18n部分的配置
  24. // 引入语言包,注意路径
  25. import Chinese from "@/common/locales/zh.js";
  26. import English from "@/common/locales/en.js";
  27. // 引入并使用vue-i18n
  28. import VueI18n from "vue-i18n";
  29. Vue.use(VueI18n);
  30. // 构造i18n对象
  31. const i18n = new VueI18n({
  32. // 默认语言,这里的local属性,对应message中的zh、en属性
  33. locale: uni.getStorageSync("Default_Lang") || "zh",
  34. // 引入语言文件
  35. messages: {
  36. // 这里的属性名是任意的,您也可以把zh设置为cn等,只是后续切换语言时
  37. // 要标识这里的语言属性,如:this.$i18n.locale = zh|en|cn|xxx
  38. zh: Chinese,
  39. en: English,
  40. },
  41. });
  42. // 引入请求库
  43. import {
  44. http
  45. } from "./common/http/index.js";
  46. Vue.prototype.$http = http;
  47. // 全局api管理
  48. import ApiManager from '@/api/index.js'
  49. Vue.use(ApiManager);
  50. import HaloTokenConfig from '@/config/uhalo.config.js'
  51. Vue.prototype.$baseApiUrl = HaloTokenConfig.BASE_API
  52. // 由于微信小程序的运行机制问题,需声明如下一行,H5和APP非必填
  53. Vue.prototype._i18n = i18n;
  54. Vue.config.productionTip = false;
  55. App.mpType = "app";
  56. const app = new Vue({
  57. i18n,
  58. ...App,
  59. });
  60. app.$mount();