app.ts 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. import { createApp } from 'vue'
  2. import { createPinia } from 'pinia'
  3. import './app.scss'
  4. // NutUI样式导入
  5. import '@nutui/nutui-taro/dist/style.css'
  6. import './assets/styles/nutui-custom.scss'
  7. import { useTabBarStore } from './stores/tabbar'
  8. import { useUserStore } from './stores/user'
  9. const App = createApp({
  10. // 入口组件不需要实现render方法,即使实现了也会被忽略
  11. onLaunch() {
  12. if (process.env.TARO_ENV === 'weapp') {
  13. const Taro = require('@tarojs/taro')
  14. Taro.cloud.init({
  15. // 使用默认环境(自动创建,无需认证)
  16. env: Taro.cloud.DYNAMIC_CURRENT_ENV,
  17. traceUser: true
  18. })
  19. Taro.removeStorageSync('userInfo');
  20. console.log('已启用微信云开发默认环境')
  21. }
  22. // 当小程序初始化完成时
  23. const tabBarStore = useTabBarStore()
  24. const userStore = useUserStore()
  25. // 初始化 TabBar 状态
  26. tabBarStore.updateSelected()
  27. // 获取用户信息
  28. userStore.initUser()
  29. },
  30. onShow(options) {
  31. console.log('App onShow', options)
  32. // 当小程序启动或从后台进入前台显示时
  33. const tabBarStore = useTabBarStore()
  34. tabBarStore.updateSelected()
  35. },
  36. })
  37. const pinia = createPinia()
  38. App.use(pinia)
  39. export default App