当我在IE中运行我的应用程序时,“类ProductList扩展React.Component {”上出现语法错误。在chrome中,它的效果很好,但在IE中,所有的react似乎都不起作用,而且我在第一个react行上遇到语法错误。
我缺少明显的东西吗?某种包装?
var React = require('react');
var PamService = require('../service/pamService');
class ProductList extends React.Component {
constructor(props) {
super(props);
this.state = ({
products: [],
filteredProducts: []
});
this.getProducts();
}
getProducts() {
var state = this;
PamService.getProducts("IDDS_stefan", "en").then(function (result) {
console.log(result);
var products = state.setNoImage(result.data);
state.setState({
products: products,
filteredProducts: products
});
});
}
setNoImage(products) {
for (var i = 0; i < products.length; i++) {
if (products[i].Image === "") {
products[i].Image = "test";
}
}
return products;
}
filterProducts(categoryId) {
console.log("FILTERPRODUCSSMAFFAKKA");
var products = this.state.products;
var filteredProducts = [];
for (var i = 0; i < products.length; i++) {
if (products[i].CategoryId.toLowerCase() === categoryId.toLowerCase()) {
filteredProducts.push(products[i]);
}
}
this.setState({ filteredProducts: filteredProducts });
}
searchProducts(searchText) {
var filteredProducts = this.state.products;
var searchedProducts = [];
for (var i = 0; i < filteredProducts.length; i++) {
if (filteredProducts[i].Name.toLowerCase().indexOf(searchText.toLowerCase()) !== -1) {
searchedProducts.push(filteredProducts[i]);
} else if (filteredProducts[i].ShortDescription.toLowerCase().indexOf(searchText.toLowerCase()) !== -1) {
searchedProducts.push(filteredProducts[i]);
} else if (filteredProducts[i].ProductId.toLowerCase().indexOf(searchText.toLowerCase()) !== -1) {
searchedProducts.push(filteredProducts[i]);
}
}
this.setState({ filteredProducts: searchedProducts });
}
resetProducts() {
var products = this.state.products;
this.setState({
filteredProducts: products
});
}
render() {
return (<div className="product-container">
<div className="product-list" >
<div className="product-list-header">
<div> </div>
<div>Art.No</div>
<div>Name</div>
<div>Description</div>
<div>Unit</div>
<div>Remark</div>
<div>Info</div>
<div>Stock</div>
<div>Price (EUR)</div>
<div>Quantity</div>
<div id="refresh-product-list" onClick={() => this.resetProducts()}>
<i className="fa fa-refresh" aria-hidden="true"></i>
</div>
</div>
{
this.state.filteredProducts.map((product) => {
return <div className="product-list-item" key={product.ProductId}>
<div>
<img src={'data:image/png;base64,' + product.Image} className="product-image"></img>
</div>
<div>{product.ProductId}</div>
<div>{product.Name}</div>
<div>{product.ShortDescription} </div>
<div>Needed?</div>
<div>Needed?</div>
<div>Needed?</div>
<div>Where to get?</div>
<div>1</div>
<div></div>
</div>
})
}
</div>
</div>)
}
};
module.exports = ProductList;
最佳答案
您是否正在使用babel来转译es6代码?查看示例https://github.com/facebookincubator/create-react-app的create-react-app。