加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
main.js 1.19 KB
一键复制 编辑 原始数据 按行查看 历史
zhaoxiangyu 提交于 2023-11-14 13:46 . xx
import App from './App'
// 引入 uView UI
import uView from './uni_modules/vk-uview-ui';
import {
createSSRApp
} from 'vue'
import * as Pinia from 'pinia'
import {
createUnistorage
} from './uni_modules/pinia-plugin-unistorage'
// #ifndef VUE3
import Vue from 'vue'
Vue.config.productionTip = false
App.mpType = 'app'
try {
function isPromise(obj) {
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 new Promise((resolve, reject) => {
res.then((res) => {
if (res[0]) {
reject(res[0]);
} else {
resolve(res[1]);
}
});
});
},
});
} catch (error) {}
const app = new Vue({
...App
})
app.$mount()
// #endif
// #ifdef VUE3
export function createApp() {
const app = createSSRApp(App)
// 数据持久化
const store = Pinia.createPinia()
// 关键代码 👇
store.use(createUnistorage())
// 使用 uView UI
app.use(uView)
app.use(store)
// return
return {
app,
Pinia // 此处必须将 Pinia 返回
}
}
// #endif
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化