You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

164 lines
4.9 KiB

import Taro, { Component, Config } from '@tarojs/taro';
import Index from './pages/index';
// import 'taro-ui/dist/style/index.scss'
import './assets/iconfont/iconfont.css';
import './app.scss';
import { setGlobalData } from './utils/global-data';
import { STORAGE_KEY } from './utils/storage-key';
// 如果需要在 h5 环境中开启 React Devtools
// 取消以下注释:
// if (process.env.NODE_ENV !== 'production' && process.env.TARO_ENV === 'h5') {
// require('nerv-devtools')
// }
class App extends Component {
componentDidMount() {
if (Taro.getUpdateManager) {
const updateManager = Taro.getUpdateManager();
updateManager.onCheckForUpdate(function(res) {
// 请求完新版本信息的回调
console.log('是否有更新:', res.hasUpdate);
});
updateManager.onUpdateReady(function() {
Taro.showModal({
title: '更新提示',
content: '新版本已经准备好,是否重启应用?',
success: (res) => {
if (res.confirm) {
// 新的版本已经下载好,调用 applyUpdate 应用新版本并重启
updateManager.applyUpdate();
}
},
});
});
updateManager.onUpdateFailed(function() {
// 新的版本下载失败
console.log('更新失败');
});
} else {
// 如果希望用户在最新版本的客户端上体验您的小程序,可以这样子提示
Taro.showModal({
title: '提示',
content: '当前微信版本过低,为了确保所有功能可用请更新微信至最新版本。',
});
}
const SDKVersionArr = Taro.getSystemInfoSync().SDKVersion.split('.');
console.log('SDKVersionArr: ', SDKVersionArr);
const SDKVersion = SDKVersionArr[1];
console.log('SDKVersion: ', SDKVersion);
if (Number(SDKVersionArr[0]) < 2) {
if (Number(SDKVersion) < 5) {
Taro.showModal({
title: '提示',
content:
'当前微信版本过低,为了确保所有功能可用请更新微信至最新版本。',
});
}
}
setGlobalData(
'activityLaunchOption',
Taro.getStorageSync(STORAGE_KEY.ACTIVITY_LAUNCH_OPTION) || null
);
if (this.$router.params.referrerInfo.extraData != undefined) {
setGlobalData(
'laborUnion',
this.$router.params.referrerInfo.extraData
);
}else{
console.log('没传');
}
}
/**
* 指定config的类型声明为: Taro.Config
*
* 由于 typescript 对于 object 类型推导只能推出 Key 的基本类型
* 对于像 navigationBarTextStyle: 'black' 这样的推导出的类型是 string
* 提示和声明 navigationBarTextStyle: 'black' | 'white' 类型冲突, 需要显示声明类型
*/
config: Config = {
__usePrivacyCheck__: true,
pages: [
'pages/start/start',
'pages/index/index',
'pages/map/map',
'pages/login/login',
'pages/login-by-phone/login-by-phone',
'pages/count-down/count-down',
'pages/charging/charging',
'pages/order-list/order-list',
'pages/order-detail/order-detail',
'pages/station-detail/station-detail',
'pages/station-detail/equipment/equipment',
'pages/confirm-fee/confirm-fee',
'pages/star-station/star-station',
'pages/my-car/my-car',
'pages/add-car/add-car',
'pages/choose-car-model/choose-car-model',
'pages/setting/setting',
'pages/activity-image/activity-image',
'pages/enterprise-order/index',
'pages/labor-union/labor-union',
'pages/labor-union-login/labor-union-login',
'pages/test/test',
],
subPackages: [
{
root: 'user-package',
name: 'userPackage',
pages: [
'pages/recharge/recharge',
'pages/coupon/coupon',
'pages/invalid-coupon/invalid-coupon',
'pages/invoice-record/invoice-record',
'pages/invoice-form/invoice-form',
'pages/invoice/invoice',
'pages/wallet/wallet',
'pages/refund/refund',
'pages/feedback/feedback',
'pages/help/help',
'pages/h5/h5',
'pages/station-lock/station-lock',
],
},
],
preloadRule: {
'pages/index/index': {
network: 'all',
packages: ['userPackage'],
},
},
window: {
backgroundTextStyle: 'light',
navigationBarBackgroundColor: '#fff',
navigationBarTitleText: '驿来特PLUS',
navigationBarTextStyle: 'black',
},
permission: {
'scope.userLocation': {
desc: '你的位置信息将用于小程序位置接口的效果展示', // 高速公路行驶持续后台定位
},
},
requiredPrivateInfos: ['getLocation'],
};
// 在 App 类中的 render() 函数没有实际作用
// 请勿修改此函数
render() {
return <Index />;
}
}
Taro.render(<App />, document.getElementById('app'));