首页 > 解决方案 > 期望一个赋值或函数调用,而是看到一个表达式 no-unused-expressions(第 14/15 行)

问题描述

我正在努力处理一些代码。我不断收到上面的错误,但我似乎无法解决它。我已经查看了几次并尝试重写第 14/15 行,但问题仍然存在。任何关于我做错了什么的信息将不胜感激。

import React from "react";
import classes from "./Products.module.css";
import Product from "./Product.js";
import apple from "../img/apple.jpg";
import banana from "../img/banana.jpg";
import kiwi from "../img/kiwi.jpg";
import pineapple from "../img/pineapple.jpg";

const Products = props => {
  let productList = Object.keys(props.products)
    .filter(x => {
      props.products[x].quantity > 0;
    })
    .map(x => {
      <Product
        description={props.products[x].description}
        price={props.products[x].price}
        add={() => {
          props.add(x);
        }}
        productCode={x}
        image={apple}
      />;
    });

  return (
    <React.Fragment>
      <div className={classes.Products}>{productList}</div>
    </React.Fragment>
  );
};

export default Products;

标签: javascriptreactjs

解决方案


你在and中失踪return了:mapfilter

let productList = Object.keys(props.products)
    .filter(x => {
      return props.products[x].quantity > 0;        // Add return here
    })
    .map(x => {
     return  <Product                               // Add return here
        description={props.products[x].description}
        price={props.products[x].price}
        add={() => {
          props.add(x);
        }}
        productCode={x}
        image={apple}
      />;
    });

或者,您可以删除大括号以隐式返回:

  let productList = Object.keys(props.products)
    .filter(x => props.products[x].quantity > 0)
    .map(x => (
      <Product
        description={props.products[x].description}
        price={props.products[x].price}
        add={() => {
          props.add(x);
        }}
        productCode={x}
        image={apple}
      />
    ));

推荐阅读