我想在商店设置变量。这是我的商店class storeCategory{ @observable categories =[]; @action getCategories = () =>{ fetch('http://localhost:3000/categories') .then((resp) => resp.json()) .then(function(resp2){ this.categories=resp2; }); }}这是我的组件@inject('sCategory')@observerclass Category extends React.Component{ componentDidMount=()=>{ this.props.sCategory.getCategories(); } render(){ const {sCategory} = this.props; return ( <ListGroup> {this.props.sCategory.categories.map((cat, index) => { return ( <ListGroupItem key={cat.id}>{cat.categoryName}</ListGroupItem> ) })} </ListGroup> ); }}我在 index.js中将 sCategory添加到Provider我在 fetch 方法中的this.categories=resp2处收到此错误;无法设置未定义的属性“类别”
1 回答
呼啦一阵风
TA贡献1802条经验 获得超6个赞
改用箭头函数:
@action getCategories = () =>{
fetch('http://localhost:3000/categories')
.then((resp) => resp.json())
.then((resp2) => {
this.categories=resp2;
});
}`
函数关键字将“this”关键字绑定到自身,但箭头函数将其绑定到上下文
添加回答
举报
0/150
提交
取消