有没有一种方法可以在编译之前删除react-native中特定于平台的代码?

时间:2019-10-24 10:13:06

标签: react-native npm bundle transpiler

我正在工作的项目使用需要定制代码才能运行的不同目标平台。当前,我们有一个设置文件,该文件是在编译时编写的,并且该文件设置了一些变量,我们可以通过这些变量运行某些代码或不运行这些代码。

但是,所有平台中都有所有特定于平台的代码,现在我们需要找到一种从其他平台中删除任何代码的方法,以便使捆绑包更小。

我想到的东西类似于C / C ++中的编译指示,假设它看起来像这样:

// Code runs fully locally for debugging:

/* REMOVE FOR ANDROID { */
/* REMOVE FOR IOS { */
if (target === 'ios') {
/* } */
  doThis();
/* REMOVE FOR IOS { */
}
/* } */
/* } */

/* REMOVE FOR IOS { */
/* REMOVE FOR ANDROID { */
if (target === 'android') {
/* } */
  doThat();
/* REMOVE FOR ANDROID { */
}
/* } */
/* } */

这样,最终结果将是:

doThis();

doThat();

有什么类似的东西可以为我们解决吗?我可以从哪里开始寻找?

0 个答案:

没有答案