javascript - 未定义的变量反应教程
问题描述
我正在尝试学习 Tania Rascia React 教程。我遇到了一个出现几个错误的地方。他们的解决方案似乎很明显,但是如果我缺少某些东西,我会感到困惑,因为这正是教程代码的确切方式。这个教程是react官方认可的,这也是我莫名其妙的原因。难道我做错了什么?还是教程错了?
以下是错误:
第 7 行:“state”未定义 no-undef 第 27 行:“removeCharacter”未定义 no-undef 第 39 行:“characters”未定义 no-undef
这是代码:
// eslint-disable-next-line
import React, { Component } from 'react';
import Table from './Table.js';
class App extends Component {
render(){
state = {
characters:[
{
'name': 'Charlie',
'job': 'Janitor'
},
{
'name': 'Mac',
'job': 'Bouncer'
},
{
'name': 'Dee',
'job': 'Aspiring Actress'
},
{
'name': 'Dennis',
'job': 'Bartender'
}
]
};
removeCharacter = index => {
const { characters } = this.state;
this.setState({
characters: characters.filter((character, i) => {
return i !== index;
})
});
}
return (
<div className="container">
<Table characterData={characters} />
</div>
);
}
}
export default App;
解决方案
您似乎缺乏基本的 React 概念,请阅读 React文档以及您的视频教程。
import React, { Component } from 'react';
import Table from './Table.js';
class App extends Component {
state = {
characters:[
{
'name': 'Charlie',
'job': 'Janitor'
},
{
'name': 'Mac',
'job': 'Bouncer'
},
{
'name': 'Dee',
'job': 'Aspiring Actress'
},
{
'name': 'Dennis',
'job': 'Bartender'
}
]
};
removeCharacter = index => {
const { characters } = this.state;
this.setState({
characters: characters.filter((character, i) => {
return i !== index;
})
});
}
render(){
const { characters } = this.state;
return (
<div className="container">
<Table characterData={characters} />
</div>
);
}
}
export default App;
推荐阅读
- node.js - slack chat.postMessage 在 slackbot 频道而不是我自己的机器人频道中发布消息
- mysql - 是否应该在“WHERE”子句中使用的每个 MYSQL 字段都有索引?
- sas - 来自另一个表搜索的观察之间的 SAS
- c++ - 使用intel内在函数加载内存中等距的双精度数?
- reactjs - Gatsby 将目录与页面滚动同步并设置活动链接的样式
- ios - 将 Quicktime (.mov) 从 iPhone 转换为 mp4
- c# - Xamarin.Forms。安卓。无法隐藏键盘
- docker - docker nginx-proxy:如何从一个容器“卷曲”到另一个容器?
- python-3.x - 使用 Prophet 的 Python 时间序列
- java - QueryDsl 投影 ElementCollection