mirror of
				https://gitcode.com/gh_mirrors/re/react-native-pushy.git
				synced 2025-10-31 21:33:12 +08:00 
			
		
		
		
	Fix example metro config
This commit is contained in:
		| @@ -2,10 +2,9 @@ const path = require('path'); | ||||
|  | ||||
| const extraNodeModules = { | ||||
|   'react-native': path.resolve(__dirname, 'node_modules/react-native'), | ||||
|   'react-native-update': path.resolve(__dirname, '../..'), | ||||
|   '@babel/runtime': path.resolve(__dirname, 'node_modules/@babel/runtime'), | ||||
| }; | ||||
| const blacklistRegexes = [ | ||||
|   /react-native-update[\/\\]node_modules[\/\\]react-native[\/\\].*/, | ||||
| ]; | ||||
| const watchFolders = [path.resolve(__dirname, '../..')]; | ||||
|  | ||||
| module.exports = { | ||||
| @@ -19,9 +18,6 @@ module.exports = { | ||||
|   }, | ||||
|   resolver: { | ||||
|     extraNodeModules, | ||||
|     blacklistRE: require('metro-config/src/defaults/blacklist')( | ||||
|       blacklistRegexes, | ||||
|     ), | ||||
|   }, | ||||
|   watchFolders, | ||||
| }; | ||||
|   | ||||
| @@ -1,5 +1,5 @@ | ||||
| import React, { | ||||
|   Component, | ||||
| import React, {Component} from 'react'; | ||||
| import { | ||||
|   StyleSheet, | ||||
|   Platform, | ||||
|   Text, | ||||
| @@ -30,20 +30,46 @@ export default class App extends Component { | ||||
|     if (isRolledBack) { | ||||
|       Alert.alert('提示', '刚刚更新失败了,版本被回滚.'); | ||||
|     } else if (isFirstTime) { | ||||
|       Alert.alert('提示', '这是当前版本第一次启动,是否要模拟启动失败?将回滚到上一版本', [ | ||||
|         {text: '是', onPress: ()=>{throw new Error('模拟启动失败,请重启应用')}}, | ||||
|         {text: '否', onPress: ()=>{markSuccess()}}, | ||||
|       ]); | ||||
|     }; | ||||
|       Alert.alert( | ||||
|         '提示', | ||||
|         '这是当前版本第一次启动,是否要模拟启动失败?将回滚到上一版本', | ||||
|         [ | ||||
|           { | ||||
|             text: '是', | ||||
|             onPress: () => { | ||||
|               throw new Error('模拟启动失败,请重启应用'); | ||||
|             }, | ||||
|           }, | ||||
|           { | ||||
|             text: '否', | ||||
|             onPress: () => { | ||||
|               markSuccess(); | ||||
|             }, | ||||
|           }, | ||||
|         ], | ||||
|       ); | ||||
|     } | ||||
|   } | ||||
|   doUpdate = info => { | ||||
|     downloadUpdate(info).then(hash => { | ||||
|     downloadUpdate(info) | ||||
|       .then(hash => { | ||||
|         Alert.alert('提示', '下载完毕,是否重启应用?', [ | ||||
|         {text: '是', onPress: ()=>{switchVersion(hash);}}, | ||||
|         {text: '否',}, | ||||
|         {text: '下次启动时', onPress: ()=>{switchVersionLater(hash);}}, | ||||
|           { | ||||
|             text: '是', | ||||
|             onPress: () => { | ||||
|               switchVersion(hash); | ||||
|             }, | ||||
|           }, | ||||
|           {text: '否'}, | ||||
|           { | ||||
|             text: '下次启动时', | ||||
|             onPress: () => { | ||||
|               switchVersionLater(hash); | ||||
|             }, | ||||
|           }, | ||||
|         ]); | ||||
|     }).catch(err => { | ||||
|       }) | ||||
|       .catch(err => { | ||||
|         Alert.alert('提示', '更新失败.'); | ||||
|       }); | ||||
|   }; | ||||
| @@ -53,20 +79,36 @@ export default class App extends Component { | ||||
|       // 开发模式不支持热更新,跳过检查 | ||||
|       return; | ||||
|     } | ||||
|     checkUpdate(appKey).then(info => { | ||||
|     checkUpdate(appKey) | ||||
|       .then(info => { | ||||
|         if (info.expired) { | ||||
|           Alert.alert('提示', '您的应用版本已更新,请前往应用商店下载新的版本', [ | ||||
|           {text: '确定', onPress: ()=>{info.downloadUrl && Linking.openURL(info.downloadUrl)}}, | ||||
|             { | ||||
|               text: '确定', | ||||
|               onPress: () => { | ||||
|                 info.downloadUrl && Linking.openURL(info.downloadUrl); | ||||
|               }, | ||||
|             }, | ||||
|           ]); | ||||
|         } else if (info.upToDate) { | ||||
|           Alert.alert('提示', '您的应用版本已是最新.'); | ||||
|         } else { | ||||
|         Alert.alert('提示', '检查到新的版本'+info.name+',是否下载?\n'+ info.description, [ | ||||
|           {text: '是', onPress: ()=>{this.doUpdate(info)}}, | ||||
|           {text: '否',}, | ||||
|         ]); | ||||
|           Alert.alert( | ||||
|             '提示', | ||||
|             '检查到新的版本' + info.name + ',是否下载?\n' + info.description, | ||||
|             [ | ||||
|               { | ||||
|                 text: '是', | ||||
|                 onPress: () => { | ||||
|                   this.doUpdate(info); | ||||
|                 }, | ||||
|               }, | ||||
|               {text: '否'}, | ||||
|             ], | ||||
|           ); | ||||
|         } | ||||
|     }).catch(err => { | ||||
|       }) | ||||
|       .catch(err => { | ||||
|         console.warn(err); | ||||
|       }); | ||||
|   }; | ||||
| @@ -74,9 +116,7 @@ export default class App extends Component { | ||||
|   render() { | ||||
|     return ( | ||||
|       <View style={styles.container}> | ||||
|         <Text style={styles.welcome}> | ||||
|           欢迎使用热更新服务 | ||||
|         </Text> | ||||
|         <Text style={styles.welcome}>欢迎使用热更新服务</Text> | ||||
|         <Image | ||||
|           resizeMode={'contain'} | ||||
|           source={require('./assets/shoucang.png')} | ||||
| @@ -84,13 +124,13 @@ export default class App extends Component { | ||||
|         /> | ||||
|         <Text style={styles.instructions}> | ||||
|           这是版本一 {'\n'} | ||||
|           当前包版本号: {packageVersion}{'\n'} | ||||
|           当前版本Hash: {currentVersion||'(空)'}{'\n'} | ||||
|           当前包版本号: {packageVersion} | ||||
|           {'\n'} | ||||
|           当前版本Hash: {currentVersion || '(空)'} | ||||
|           {'\n'} | ||||
|         </Text> | ||||
|         <TouchableOpacity onPress={this.checkUpdate}> | ||||
|           <Text style={styles.instructions}> | ||||
|             点击这里检查更新 | ||||
|           </Text> | ||||
|           <Text style={styles.instructions}>点击这里检查更新</Text> | ||||
|         </TouchableOpacity> | ||||
|       </View> | ||||
|     ); | ||||
| @@ -114,7 +154,5 @@ const styles = StyleSheet.create({ | ||||
|     color: '#333333', | ||||
|     marginBottom: 5, | ||||
|   }, | ||||
|   image : { | ||||
|   }, | ||||
|   image: {}, | ||||
| }); | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 sunnylqm
					sunnylqm