gpt4 book ai didi

javascript - 如何解决类型错误: Cannot read property 'filter' of undefined

转载 作者:行者123 更新时间:2023-12-03 00:30:58 24 4
gpt4 key购买 nike

当我在 VSC 上编译时,我没有收到此错误,但当我在浏览器中加载页面时,我看到的是:

类型错误:无法读取未定义的属性“过滤器”

和:

  10 |   product={product}
11 | addToCart={props.addToCart}
12 | removeFromCart={props.removeFromCart}
> 13 | cartItem={
| ^
14 | props.cart.filter(cartItem => cartItem.id === product.id)[0]
15 | }
16 | />

完整功能如下:

function ProductListing(props) {
return (
<div className="product-listing">
{props.products.map(product => (
<ProductListItem
product={product}
addToCart={props.addToCart}
removeFromCart={props.removeFromCart}
cartItem={
props.cart.filter(cartItem => cartItem.id === product.id)[0]
}
/>
))}
</div>
);
}

最佳答案

确保在父级中有条件地渲染子级,以便仅在 props.cart 准备就绪时才渲染它。

export class ParentContainer extends Component {

constructor(){
super()
this.state = {
cart: []
isLoading: true
}
}

componentWillMount(){
// fetch('/some/endpoint')
// massage your data and then push it to state
.then(card => {
this.setState({cart, isLoading: false})
})
}

render() {
return (
<Fragment>
{this.state.isLoading ? ( // evalutate if Data is ready to be passed
<Fragment />
) : (
<CartInformation cart={this.state.cart} />
)
}
</Fragment>
)
}
}

关于javascript - 如何解决类型错误: Cannot read property 'filter' of undefined,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53872245/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com