ipanel-rnapp-ajb-base 1.0.9 → 1.0.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md ADDED
@@ -0,0 +1,3 @@
1
+ # ipanel-rnapp-ajb-base
2
+
3
+ ipanel-rnapp-ajb-base npm仓库
@@ -18,7 +18,7 @@ const TestPage = ({navigation}) => {
18
18
  const onPress = () => {
19
19
  global.base.navigateModule({
20
20
  operatorId: 'ipanel',
21
- moduleName: 'app',
21
+ moduleName: '__BASE_SINGLETON_MODE_APP__',
22
22
  });
23
23
  };
24
24
 
@@ -1 +1,2 @@
1
1
  export default 'production';
2
+ // export default '__BASE_SINGLETON_MODE__'; // 单业务包开发模式时,启用该注释,注意,提交时不要提交该改动!!!
@@ -1,4 +1,5 @@
1
- import {AppRegistry, NativeModules} from 'react-native';
1
+ import React from 'react';
2
+ import {AppRegistry, NativeModules, View, Text} from 'react-native';
2
3
 
3
4
  // isMultiBundle:是否为分包加载方式(不是的话就是不分包方式,用于本地调试)
4
5
  const isLocalDev = !NativeModules.RNToNativeEmitter?.isMultiBundle;
@@ -12,21 +13,29 @@ async function getRemoteComponentByName(componentName) {
12
13
  // 用于本地开发测试,每加一个业务包这里都需要加一下
13
14
  switch (componentName) {
14
15
  case 'tvShare':
15
- return (await import('../app_tvShare/App.js')).default;
16
+ return (await import('../../app_tvShare/App.js')).default;
16
17
  case 'smartHome':
17
- return (await import('../app_smartHome/App.js')).default;
18
+ return (await import('../../app_smartHome/App.js')).default;
18
19
  case 'shop':
19
- return (await import('../app_shop/App.js')).default;
20
+ return (await import('../../app_shop/App.js')).default;
20
21
  case 'panYuGovData':
21
- return (await import('../app_panYuGovData/App.js')).default;
22
+ return (await import('../../app_panYuGovData/App.js')).default;
22
23
  case 'myProfile':
23
- return (await import('../app_myProfile/App.js')).default;
24
+ return (await import('../../app_myProfile/App.js')).default;
24
25
  case 'adg':
25
- return (await import('../app_adg/App.js')).default;
26
+ return (await import('../../app_adg/App.js')).default;
26
27
  case 'orderFood':
27
- return (await import('../app_orderFood/App.js')).default;
28
+ return (await import('../../app_orderFood/App.js')).default;
28
29
  case 'apartment':
29
- return (await import('../app_apartment/App.js')).default;
30
+ return (await import('../../app_apartment/App.js')).default;
31
+ // __BASE_SINGLETON_MODE_APP__
32
+ default:
33
+ return () => {
34
+ return (
35
+ <View>
36
+ <Text>__BASE_SINGLETON_MODE_APP__</Text>
37
+ </View>)
38
+ };
30
39
  }
31
40
  } catch (e) {
32
41
  console.log(componentName, e);
package/app/base.js CHANGED
@@ -102,6 +102,8 @@ global.base.shopMessageManager = {
102
102
  wsRef: null,
103
103
  };
104
104
 
105
+ console.log("NODE_ENV:", process.env.NODE_ENV);
106
+
105
107
  // isMultiBundle:是否为分包加载方式(不是的话就是不分包方式,用于本地调试)
106
108
  const isLocalDev = !NativeModules.RNToNativeEmitter?.isMultiBundle;
107
109
  /**
@@ -314,7 +316,7 @@ global.base.navigateModule = async ({
314
316
  }
315
317
  console.log('模块未被加载过,先加载注册再跳转');
316
318
 
317
- if (env !== '__LOCAL_DEV__') {
319
+ if (env !== '__BASE_SINGLETON_MODE__') {
318
320
  const result = await getModuleVersionInfo({
319
321
  platform: Platform.OS,
320
322
  operatorId,
@@ -123,7 +123,7 @@ function HomeTabScreen({navigation, route}) {
123
123
 
124
124
  console.log('env:', env);
125
125
 
126
- if (env !== '__LOCAL_DEV__') {
126
+ if (env !== '__BASE_SINGLETON_MODE__') {
127
127
  let packages = await getNavigationPackages();
128
128
 
129
129
  const flag = await global.base
@@ -167,7 +167,7 @@ function HomeTabScreen({navigation, route}) {
167
167
  });
168
168
  } else {
169
169
  // 单业务包开发调试环境
170
- const component = await global.base.getRemoteComponentByName('app');
170
+ const component = await global.base.getRemoteComponentByName('__BASE_SINGLETON_MODE_APP__');
171
171
  typeof component?.registerStackScreens === 'function' &&
172
172
  component.registerStackScreens();
173
173
  tabs = [
@@ -219,11 +219,11 @@ function HomeTabScreen({navigation, route}) {
219
219
  await checkToken();
220
220
  }
221
221
 
222
- if (env === '__LOCAL_DEV__') {
222
+ if (env === '__BASE_SINGLETON_MODE__') {
223
223
  // 单业务包开发调试环境
224
224
  global.base.navigateModule({
225
225
  operatorId: 'ipanel',
226
- moduleName: 'app',
226
+ moduleName: '__BASE_SINGLETON_MODE_APP__',
227
227
  });
228
228
  }
229
229
 
@@ -67,6 +67,8 @@ const appName =
67
67
 
68
68
  const envVersion = NativeModules?.RNToNativeEmitter?.serverCluster || 'alpha';
69
69
 
70
+ const packageName = NativeModules?.RNToNativeEmitter?.packageName;
71
+
70
72
  // const appName = '遥控键码库';
71
73
 
72
74
  function LoginScreen({navigation, route}) {
@@ -154,7 +156,10 @@ function LoginScreen({navigation, route}) {
154
156
  await global.base.navigateModule({
155
157
  operatorId: 'ipanel',
156
158
  moduleName: 'adg',
157
- screenName: 'EntranceSelectScreen',
159
+ screenName:
160
+ packageName === 'com.ipanel.rnApp.abp2'
161
+ ? 'IstickUpdate3Screen'
162
+ : 'EntranceSelectScreen',
158
163
  isReplace: true,
159
164
  });
160
165
  global.loading.hideLoading();
@@ -536,7 +541,10 @@ function LoginScreen({navigation, route}) {
536
541
  await global.base.navigateModule({
537
542
  operatorId: 'ipanel',
538
543
  moduleName: 'adg',
539
- screenName: 'EntranceSelectScreen',
544
+ screenName:
545
+ packageName === 'com.ipanel.rnApp.abp2'
546
+ ? 'IstickUpdate3Screen'
547
+ : 'EntranceSelectScreen',
540
548
  isReplace: true,
541
549
  });
542
550
  global.loading.hideLoading();
@@ -575,7 +583,7 @@ function LoginScreen({navigation, route}) {
575
583
  currentOperator ||
576
584
  appName.includes('安电工') ||
577
585
  activeType === 'adg' ||
578
- env === '__LOCAL_DEV__'
586
+ env === '__BASE_SINGLETON_MODE__'
579
587
  ) {
580
588
  replace('Home', {
581
589
  redirect: false,
@@ -4,10 +4,11 @@ import {NativeModules} from 'react-native';
4
4
  const envVersion = NativeModules?.RNToNativeEmitter?.serverCluster || 'alpha';
5
5
  // NativeModules?.RNToNativeEmitter?.serverCluster || 'dev'; /*本地测试*/
6
6
  // `ipanelcloud`域名(因APP是`开发版`、`测试版`或`正式版`而不同)
7
-
8
7
  const appName = NativeModules?.RNToNativeEmitter?.appName;
8
+ const packageName = NativeModules?.RNToNativeEmitter?.packageName;
9
9
 
10
10
  console.log('当前app名称', appName);
11
+ console.log('当前app包名', packageName);
11
12
 
12
13
  let IPANEL_CLOUD_DOMAIN;
13
14
  if (appName === '禺乐慧家') {
package/bin/local-dev.js CHANGED
@@ -63,7 +63,7 @@ var exists = function (src, dst, callback) {
63
63
  // 重写.local_dev/env.js
64
64
  fs.writeFileSync(
65
65
  path.resolve(__dirname, "../app/.local_dev/env.js"),
66
- `export default '__LOCAL_DEV__';`
66
+ `export default '__BASE_SINGLETON_MODE__';`
67
67
  );
68
68
 
69
69
  // 重写.local_dev/polyfill.js
package/package.json CHANGED
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "name": "ipanel-rnapp-ajb-base",
3
- "version": "1.0.9",
3
+ "version": "1.0.11",
4
+ "ipanelVersion": "1.0.294",
4
5
  "description": "",
5
6
  "main": "index.js",
6
7
  "bin": {
package/tmpl/polyfill.js CHANGED
@@ -11,7 +11,7 @@ async function getRemoteComponentByName(componentName) {
11
11
  try {
12
12
  // 用于本地开发测试,每加一个业务包这里都需要加一下
13
13
  switch (componentName) {
14
- case "app":
14
+ case "__BASE_SINGLETON_MODE_APP__":
15
15
  return (await import("../../../../app/App.js")).default;
16
16
  }
17
17
  } catch (e) {