|
|
import App from './App'
|
|
|
// import share from './utils/share'
|
|
|
import share from './utils/share'
|
|
|
|
|
|
// main.js
|
|
|
import uviewPlus from 'uview-plus'
|
|
|
// #ifndef VUE3
|
|
|
import Vue from 'vue'
|
|
|
Vue.config.productionTip = false
|
|
|
App.mpType = 'app'
|
|
|
|
|
|
// Vue.mixin(share)
|
|
|
try {
|
|
|
function isPromise(obj) {
|
|
|
return (
|
|
|
!!obj &&
|
|
|
(typeof obj === "object" || typeof obj === "function") &&
|
|
|
typeof obj.then === "function"
|
|
|
);
|
|
|
return !!obj && (typeof obj === 'object' || typeof obj === 'function') && typeof obj.then === 'function'
|
|
|
}
|
|
|
|
|
|
// 统一 vue2 API Promise 化返回格式与 vue3 保持一致
|
|
|
uni.addInterceptor({
|
|
|
returnValue(res) {
|
|
|
if (!isPromise(res)) {
|
|
|
return res;
|
|
|
return res
|
|
|
}
|
|
|
return new Promise((resolve, reject) => {
|
|
|
res.then((res) => {
|
|
|
res.then(res => {
|
|
|
if (res[0]) {
|
|
|
reject(res[0]);
|
|
|
reject(res[0])
|
|
|
} else {
|
|
|
resolve(res[1]);
|
|
|
resolve(res[1])
|
|
|
}
|
|
|
})
|
|
|
})
|
|
|
}
|
|
|
});
|
|
|
});
|
|
|
},
|
|
|
});
|
|
|
} catch (error) { }
|
|
|
})
|
|
|
} catch (error) {}
|
|
|
|
|
|
const app = new Vue({
|
|
|
...App
|
...
|
...
|
@@ -47,6 +46,7 @@ export function createApp() { |
|
|
const app = createSSRApp(App)
|
|
|
app.config.globalProperties.$methods = methods
|
|
|
app.use(uviewPlus)
|
|
|
app.mixin(share)
|
|
|
return {
|
|
|
app
|
|
|
}
|
...
|
...
|
|