Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/416.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用redux选择器从数据中获取这些项目_Javascript_Reactjs_Parameters_React Router Dom_Redux Selector - Fatal编程技术网

Javascript 如何使用redux选择器从数据中获取这些项目

Javascript 如何使用redux选择器从数据中获取这些项目,javascript,reactjs,parameters,react-router-dom,redux-selector,Javascript,Reactjs,Parameters,React Router Dom,Redux Selector,我有一个对象的数据通知,其中有一个对象也带有路由名称的名称,然后在该对象内又有路由名称、标题和项目,但项目是数组形式的。 然后使用redux中的选择器,在数据中插入动态路由名称,并使用参数名/路径,使用参数。如果您查看第二个组件下面的代码,我使用match.path/:collectionId来匹配我从商店获得的产品路径和collectionId(一个参数),我使用redux选择器将routeName与collectionId匹配。因此,我没有一致地显示collectionId,而是根据您所使用

我有一个对象的数据通知,其中有一个对象也带有路由名称的名称,然后在该对象内又有路由名称、标题和项目,但项目是数组形式的。 然后使用redux中的选择器,在数据中插入动态路由名称,并使用参数名/路径,使用参数。如果您查看第二个组件下面的代码,我使用match.path/:collectionId来匹配我从商店获得的产品路径和collectionId(一个参数),我使用redux选择器将routeName与collectionId匹配。因此,我没有一致地显示collectionId,而是根据您所使用的路由动态显示路由名称

const Shop = ({ match }) => {
 
    return (
      <div className="shop-page">
        <Route exact path={`${match.path}`} component={collectionOverview} />
        <Route excat path={`${match.path}/:collectionId`} component={collectionPage} />  
    </div>
      
    )
  }
帽子:{ id:1, 标题:"帽子",, routeName:“帽子”, 项目:[ { _id:1, 名称:“棕色边缘”, imageUrl:'https://i.ibb.co/ZYW3VTp/brown-brim.png', 价格:25 }, { _id:2, 名字:'蓝豆', imageUrl:'https://i.ibb.co/ypkgK0X/blue-beanie.png', 价格:18 }, { _id:3, 名字:“棕色牛仔”, imageUrl:'https://i.ibb.co/QdJwgmp/brown-cowboy.png', 价格:35 }, { _id:4, 名称:“灰边”, imageUrl:'https://i.ibb.co/RjBLWxB/grey-brim.png', 价格:25 }, { _id:5, 名字:'绿豆', imageUrl:'https://i.ibb.co/YTjW3vF/green-beanie.png', 价格:18 }, { _id:6, 名称:'棕榈树帽', imageUrl:'https://i.ibb.co/rKBDvJX/palm-tree-cap.png', 价格:14 }, { _id:7, 名字:'红豆', imageUrl:'https://i.ibb.co/bLB646Z/red-beanie.png', 价格:18 }, { _id:8, 名字:'狼帽', imageUrl:'https://i.ibb.co/1f2nWMM/wolf-cap.png', 价格:14 }, { _id:9, 名称:'Blue Snapback', imageUrl:'https://i.ibb.co/X2VJP2W/blue-snapback.png', 价格:16 } ] },

但是在这里,我剪切了数据,因为显示所有数据需要很长时间。但这是数据的格式。。。 如您所见,我只想使用选择器插入项目,并创建了一个产品详细信息页面。。请帮助,我已经试图解决这个问题超过一个月了,请来到我的助手,如果你需要更多的信息,请让我知道。我愿意与公司合作。多谢各位

const CollectionPage = ({ collection }) => {
  const { title, items } = collection;
  return (
    <CollectionPageContainer>
      <CollectionTitle>{title}</CollectionTitle>
      <CollectionItemsContainer>
        {items.map(item => (
          <>
            <CollectionItem key={item.id} item={item} />
          </>
        ))}
      </CollectionItemsContainer>
    </CollectionPageContainer>
  );
};

const mapStateToProps = (state, ownProps) => ({
  collection: selectCollection(ownProps.match.params.collectionId)(state)
});
const SHOP_DATA = {