import Taro, { useLaunch } from "@tarojs/taro"; import { PropsWithChildren } from "react"; import "./app.less"; import { useAppStoreActions } from "./store/appStore"; import { generateRandomId } from '@/utils/index' import {LOGIN_ID_STORAGE_KEY } from '@/xiaolanbenlib/constant' import dayjs from "dayjs"; import 'dayjs/locale/zh-cn' import relativeTime from 'dayjs/plugin/relativeTime' dayjs.locale('zh-cn'); dayjs.extend(relativeTime) if (process.env.TARO_ENV == "h5") { const VConsole = require("vconsole"); new VConsole(); } function App({ children }: PropsWithChildren) { const { setSystemInfo } = useAppStoreActions(); useLaunch((options) => { console.log("App launched.", options.query); const updateManager = Taro.getUpdateManager(); updateManager.onCheckForUpdate(function (res) { // 请求完新版本信息的回调 console.log("需要更新: ", res.hasUpdate); }); updateManager.onUpdateReady(function () { Taro.showModal({ title: "更新提示", content: "新版本已经准备好,是否重启应用?", success: function (res) { if (res.confirm) { // 新的版本已经下载好,调用 applyUpdate 应用新版本并重启 updateManager.applyUpdate(); } }, }); }); updateManager.onUpdateFailed(function () { // 新版本下载失败 }); const res = Taro.getSystemInfoSync() setSystemInfo(res); // console.log(a.miniProgram) // Taro.getSystemInfoAsync({ // success(res) { // }, // }); const uuid = generateRandomId() console.log(uuid) Taro.setStorageSync(LOGIN_ID_STORAGE_KEY, uuid) // 打开小程序时创建 login_uuid }); return <>{children}; } export default App;