React Native - 无法找到变量:符号

时间:2018-05-24 08:29:29

标签: reactjs react-native react-native-web

场景

我正在编写一个React-Native-Web(RNW)应用程序。基本设计是一个核心应用程序,它将自定义React-Native组件库作为节点包。

组件库也是一个RNW应用程序,因为我使用StoryBook来单独开发。

问题

当我使用npm i ...将组件库安装到核心应用程序并将其导入src文件夹中的App.js时,我收到以下错误...

ReferenceError: Can't find variable: Symbol

This error is located at:
    in Styled(SimpleList) (created by App)
    in RCTView (created by View)
    in View (created by App)
    in App (created by NativeApp)
    in NativeApp
    in RCTView (created by View)
    in View (created by AppContainer)
    in RCTView (created by View)
    in View (created by AppContainer)
    in AppContainer

我还尝试安装es6-symbol,但这似乎没有任何影响。

enter image description here

有什么建议吗?

3 个答案:

答案 0 :(得分:4)

你需要

  

npm install es6-symbol --save

然后在index.android.js&里面index.ios.js

  

导入' es6-symbol / implement'

如果它只在android中引起问题,你可能想在index.android.js

中添加它
  

导入' core-js / es6 / symbol';

     

import' core-js / fn / symbol / iterator';

     

import" core-js / es6 / set&#34 ;;

issue

答案 1 :(得分:0)

感谢@ supra28的解决方案。我必须做的唯一改变是添加

import 'core-js/es6/symbol';

import 'core-js/fn/symbol/iterator';

import "core-js/es6/set";

到app.js而不是index.android.js。此解决方案适用于ios和android

答案 2 :(得分:0)

将它们导入您的根index.js文件中:

import "core-js/stable";
import "regenerator-runtime/runtime";