【发布时间】:2018-10-10 22:42:24
【问题描述】:
我已经完成了一个遍历 json 文件 (goods.json) 的 array.map()。然后我想对它进行一些操作(例如,想在 removeCard(obj) 方法中从这个数组中删除项目)。渲染没问题,但问题是我不明白为什么我在 removeCard(obj) 方法中看不到 shoppingCardsJSX 数组,总是不够精确。我已经阅读了 How to delete a ToDo Item onClick in React? 和 @987654322 中的答案@但不幸的是我不明白它是如何工作的。你能帮我找出我做错了什么吗?希望这部分代码能说明我的问题,
import { sample } from 'rxjs/internal/operators';
import React from 'react';
import ShoppingCard from './ShoppingCard';
import goods from './goods.json';
export default class ShoppingCards extends React.Component {
constructor (props){
super(props);
}
removeCard(obj){
console.log("fireeeee");
console.log(obj);
console.log(this.shoppingCardsJSX);
}
render() {
console.log("render");
let shoppingCardsJSX = goods.map((good) => {
return (
<ShoppingCard
key = {good.id }
goodId = {good.id}
src = {good.src}
price = {good.price}
onRemoveCard={this.removeCard}
/>
);
});
console.log(shoppingCardsJSX);
return shoppingCardsJSX;
}
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react-dom.min.js"></script>
【问题讨论】:
-
您确定 goods 包含任何内容吗?你可以 console.log 确定一下吗?
-
是的,它包含
标签: javascript reactjs scope