ReactJS在componentWillMount中动态二维数组赋值



我有一些餐馆。每个人都有评论。我想把这些评论存储在一个状态中。2D数组:每一行代表一个餐厅,每个元素代表一个回顾对象。

由于后台的性质,有必要在componentWillMount()中执行此操作。

async componentWillMount() {
let reviewsHelper = this.state.reviews.slice();
for (var i = 0; i < restaurantCount; i = i + 1) {
...
for (var j = 0; j < restaurant.reviewCount; j = j + 1) {
... get reviewObj
reviewsHelper[i][j] = reviewObj
}
}
this.setState({
reviews: reviewsHelper
})
}
...
constructor(props) {
super(props)
this.state = {
reviews: [[], [], [], []],
...
}
}

这工作。然而,正如您可能已经看到的,当我在构造函数中定义状态时,我有4[]。这意味着我支持4家餐厅。

我如何改变这一点,让我接受无限的餐馆?或者,更好的是,一些restaurantCount餐厅?

我是React的新手,任何帮助都会非常感激。

在Google上搜索了几个小时后,我最终修复了这个问题。

async componentWillMount() {
let reviewsHelper = this.state.reviews.slice();
for (var i = 0; i < restaurantCount; i = i + 1) {
...
var helperList = []
for (var j = 0; j < restaurant.reviewCount; j = j + 1) {
... get reviewObj
helperList.push(reviewObj)
}
reviewsHelper.push(helperList)
}
this.setState({
reviews: reviewsHelper
})
}
constructor(props) {
super(props)
this.state = {
reviews: [],
...
}
}

相关内容

  • 没有找到相关文章

最新更新