我试着在codesandbox中写一个代码,但是它有一个错误。我必须通过三进制做一个检查。
TypeError
Cannot assign to read only property 'message' of object 'SyntaxError: /src/components/SearchResults.js: Unexpected token (8:10)
6 | {filteredProducts().map((product) => {
7 | filteredProducts().length > 0 (
> 8 | return (
| ^
9 | <div key={product.id}>
10 | <li>{product.title}</li>
11 | </div>'
为了解决这个问题,我使用了带?和的三进制:我做错什么了吗?会是什么?有人能帮我吗?
组件出错
import React from "react";
const SearchResults = ({ filteredProducts }) => {
return (
<div>
{filteredProducts().map((product) => {
filteredProducts().length > 0 (
return (
<div key={product.id}>
<li>{product.title}</li>
</div>
)
) : (
return(
<p>Item not found</p>
)
)
})}
</div>
);
};
export default SearchResults;
2条答案
按热度按时间wkyowqbh1#
你应该像这样检查map语句前面的长度:
eimct9ow2#
(expression)中不能有
return
,因为它不是函数另外,三元语法中有“?”,如下所示