Javascript ReactJS-超级表达式必须为null或函数,而不是未定义的
我一直在学习udemy的课程,但无论我做什么,都会出现一个错误: 以下是组件代码:Javascript ReactJS-超级表达式必须为null或函数,而不是未定义的,javascript,html,reactjs,Javascript,Html,Reactjs,我一直在学习udemy的课程,但无论我做什么,都会出现一个错误: 以下是组件代码: import React from 'react'; import { Component } from 'react'; import { connect } from 'react-redux'; import Chart from '../components/chart'; class WeatherList extends Component { constructor(props) {
import React from 'react';
import { Component } from 'react';
import { connect } from 'react-redux';
import Chart from '../components/chart';
class WeatherList extends Component {
constructor(props) {
super(props);
}
renderWeather(cityData) {
...
}
render() {
return (
...
);
}
}
function mapStateToProps(state) {
return {
weather: state.weather
};
}
export default connect(mapStateToProps)(WeatherList);
下面是我要导入的图表组件:
从“React”导入React;
从“react Sparklines”导入{Sparklines,Sparklines Line,Sparklines Referenceline};
从“lodash”进口;
函数平均值(数据){
返回u.round(u.sum(数据)/数据长度);
}
常量图表=(道具)=>{
返回(
{average(props.data)}{props.units}
);
};
导出默认图表
进一步检查后,当您试图访问组件中未定义的thisprops
对象时,问题似乎出现在图表
组件中
因此,与
data={thisprops.data}
相反,它应该是:data={props.data}
进一步检查后,当您试图访问组件中未定义的thisprops
对象时,问题似乎出现在图表中
因此,它应该是:data={props.data}
,而不是data={props.data}
我也有同样的问题。该缺陷是由“反应火花线”引起的。通过以下方式降级版本:
npm i——保存响应-sparklines@1.6.0
我也有同样的问题。该缺陷是由“反应火花线”引起的。通过以下方式降级版本:
npm i——保存响应-sparklines@1.6.0
请尝试删除您的构造函数。根据reactjs文档,“如果你不初始化状态,也不绑定方法,你就不需要为你的React组件实现构造函数。”GabrielDiez它仍然抛出同样的错误,我只是在前面添加了构造函数,以查看它是否有任何作用。isChart
文件名的可能重复实小写Chart
?是的,错误与模块无关。请尝试删除您的构造函数。根据reactjs文档,“如果你不初始化状态,也不绑定方法,你就不需要为你的React组件实现构造函数。”GabrielDiez它仍然抛出同样的错误,我只是在前面添加了构造函数,看看它是否有任何作用。可能重复的是<代码>图表<代码>文件名真实小写<代码>图表代码>?是的,错误与模块无关。我的react版本是@0.14.9,在我添加图表组件之前,它运行得非常完美,至于代码,这其实并不重要,因为当我从“url”注释掉导入图表时,
不会抛出错误。所以我只展示了破坏应用程序的部分。我编辑了我的答案。尝试使用命名的默认值导出图表,而不是仅导出函数。另外,为什么不发布整个图表
组件代码,因为它是导致问题的原因?我刚刚在问题中添加了文件的其余部分-data={thisprops.data}
?显然,它应该是data={props.data}
。我更新了我的答案作为这个问题的解决方案。这只是因为我试图把它变成一个基于类的组件,然后它什么都没做,所以这是一个无关的问题。我仍然有同样的问题。谢谢你的尝试,但我认为这个问题没有解决办法。我会很快关闭它。我的react版本是@0.14.9,在我添加图表组件之前,它运行得非常完美。至于代码,这并不重要,因为当我注释掉从“url”导入图表时,
它不会抛出错误。所以我只展示了破坏应用程序的部分。我编辑了我的答案。尝试使用命名的默认值导出图表,而不是仅导出函数。另外,为什么不发布整个图表
组件代码,因为它是导致问题的原因?我刚刚在问题中添加了文件的其余部分-data={thisprops.data}
?显然,它应该是data={props.data}
。我更新了我的答案作为这个问题的解决方案。这只是因为我试图把它变成一个基于类的组件,然后它什么都没做,所以这是一个无关的问题。我仍然有同样的问题。谢谢你的尝试,但我认为这个问题没有解决办法。我很快就要关了