所以在我的状态下,我想跟踪一个包含用于查询的对象的数组。我使用React.js与Redux并拥有lodash包。问题是我似乎无法在我的状态中向我的数组添加一个对象。
我希望有人可以告诉我如何正确地做到这一点。
这是我的功能:
setFilterActive(type, min, max) {
const filterObj = {
type: type,
min: min,
max: max
};
let state = this.state;
_.reject(state.queryObject.query.filters, filter => filterObj.isEqual(filter));
_.merge(filterObj,state.queryObject.query.filters);
console.log(filterObj);
this.setState(state);
console.log("Filters Array:" , this.state.queryObject.filters);
}
答案 0 :(得分:0)
试试这个。
_.assign
另外,作为建议,您应该使用_.merge
而不是 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:templateObject="urn:data">
<xsl:output method="html" omit-xml-declaration="yes"/>
<xsl:variable name="products" />
<xsl:variable name="doc" select="document($products)"/>
<xsl:template match="/body">
<html>
<body bgcolor="#E5E5E5" leftmargin="0" marginwidth="0" topmargin="0" marginheight="0" offset="0">
<table style="width:100%;" class="orderItems">
<xsl:for-each select="$doc">
<tbody>
<tr>
<td class="itemThumbnail" style="width:80px; height:70px; padding-top:20px;">
<img src="ref" alt="" />
</td>
<td style="padding-top:20px; font-family:Arial, Verdana, Helvetica, sans-serif; font-size: 16px; line-height: 20px; color:#4c4c4c;">
<xsl:value-of select="$ProductName" /><br />
Quantity: 1
</td>
<td style="text-align:right; font-family:Arial, Verdana, Helvetica, sans-serif; font-size: 16px; line-height: 20px; color:#4c4c4c;">
Price: <strong style="font-size:20px; color:#b9277e;">
<xsl:value-of select="$Amount" />
</strong>
</td>
</tr>
</tbody>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
,因为它会改变对象。