【发布时间】:2016-05-30 14:23:23
【问题描述】:
从 ReactNative 0.25 升级到 0.26 后,我得到了这个众所周知的错误:
"超级表达式必须为 null 或函数,不能为 null".
我知道最常见的原因是从“react-native”而不是“react”导入“组件”。
但在我的所有组件中,我显然都做对了:
import React, { Component } from 'react';
是否有人遇到过此错误的另一个根本原因?现在,我创建了第二个完整的新项目,并尝试使用主项目的现有代码从头开始构建它,直到有一天可能发生错误。但这真的是一个时间杀手......
我不使用以弃用而闻名的 RNMK-Library。
我的依赖似乎对 0.26 有效:
"dependencies": {
"immutable": "^3.8.1",
"react": "15.0.2",
"react-native": "0.26.2",
"react-native-app-intro": "^1.0.2",
"react-native-button": "^1.6.0",
"react-native-drawer": "^2.2.2",
"react-native-fetch-blob": "^0.4.2",
"react-native-fs": "^1.4.0",
"react-native-i18n": "0.0.8",
"react-native-navbar": "^1.5.0",
"react-native-router-flux": "^3.22.23",
"react-native-router-redux": "^0.2.2",
"react-native-search-bar": "^2.11.0",
"react-native-side-menu": "^0.19.0",
"react-native-simple-store": "^1.0.1",
"react-native-sound": "^0.8.3",
"react-native-sqlite-storage": "^2.1.6",
"react-native-swiper": "^1.4.4",
"react-native-vector-icons": "^2.0.2",
"react-redux": "^4.4.5",
"redux": "^3.5.2",
"redux-logger": "^2.6.1",
"redux-saga": "^0.10.4",
"redux-thunk": "^2.1.0",
"rnpm": "^1.7.0"
}
【问题讨论】:
-
“超表达式必须为null或者函数,不能为null” 不能为null怎么为null?这不只是将它限制为一个函数吗?
-
哪一行会报错?请向我们展示该代码。
-
@bergi 不幸的是,该错误没有显示正确的代码行,只有一些包裹在真实事物周围的内部结构。看看我自己对这个问题的回答。我发现一个库导致了这个问题,它还没有为 RN 0.26 做好准备
标签: javascript reactjs react-native ecmascript-6