| | |
| | | import App from './App' |
| | | import messages from './locale/index.js' |
| | | |
| | | let i18nConfig = { |
| | | locale: uni.getLocale(), // 获取已设置的语言 |
| | | messages |
| | | } |
| | | |
| | | // #ifndef VUE3 |
| | | import Vue from 'vue' |
| | | import './uni.promisify.adaptor' |
| | | Vue.config.productionTip = false |
| | | App.mpType = 'app' |
| | | |
| | | try { |
| | | function isPromise(obj) { |
| | | return ( |
| | | !!obj && |
| | | (typeof obj === "object" || typeof obj === "function") && |
| | | typeof obj.then === "function" |
| | | ); |
| | | } |
| | | import VueI18n from 'vue-i18n' |
| | | Vue.use(VueI18n) |
| | | |
| | | // 统一 vue2 API Promise 化返回格式与 vue3 保持一致 |
| | | uni.addInterceptor({ |
| | | returnValue(res) { |
| | | if (!isPromise(res)) { |
| | | return res; |
| | | } |
| | | return new Promise((resolve, reject) => { |
| | | res.then((res) => { |
| | | if (res[0]) { |
| | | reject(res[0]); |
| | | } else { |
| | | resolve(res[1]); |
| | | } |
| | | }); |
| | | }); |
| | | }, |
| | | }); |
| | | } catch (error) { } |
| | | import uView from '@/uni_modules/uview-ui' |
| | | Vue.use(uView) |
| | | |
| | | const app = new Vue({ |
| | | ...App |
| | | Vue.mixin({ |
| | | methods: { |
| | | $showToast(options) { |
| | | if (this.$refs.uToast) { |
| | | this.$refs.uToast.show(options); |
| | | } else { |
| | | // Fallback if component not found or loaded yet |
| | | uni.$u.toast(typeof options === 'string' ? options : (options.message || options.title)); |
| | | } |
| | | } |
| | | } |
| | | }) |
| | | |
| | | const i18n = new VueI18n(i18nConfig) |
| | | const app = new Vue({ |
| | | ...App, |
| | | i18n |
| | | }) |
| | | |
| | | // 引入请求封装,将app参数传递到配置中 |
| | | require('./config/request.js')(app) |
| | | |
| | | app.$mount() |
| | | // #endif |
| | | |
| | | // #ifdef VUE3 |
| | | import { createSSRApp } from 'vue' |
| | | import { |
| | | createSSRApp |
| | | } from 'vue' |
| | | import uView from '@/uni_modules/uview-ui' |
| | | export function createApp() { |
| | | const app = createSSRApp(App) |
| | | return { |
| | | app |
| | | } |
| | | const app = createSSRApp(App) |
| | | app.use(uView) |
| | | app.mixin({ |
| | | methods: { |
| | | $showToast(options) { |
| | | if (this.$refs.uToast) { |
| | | this.$refs.uToast.show(options); |
| | | } else { |
| | | uni.$u.toast(typeof options === 'string' ? options : (options.message || options.title)); |
| | | } |
| | | } |
| | | } |
| | | }) |
| | | return { |
| | | app |
| | | } |
| | | } |
| | | // #endif |
| | | // #endif |