我从
this post开始学到这个东西.
function StoreMixin(...stores) { // what is "..." var Mixin = { getinitialState() { return this.getStateFromStores(this.props); },componentDidMount() { stores.forEach(store => store.addchangelistener(this.handleStoresChanged) ); this.setState(this.getStateFromStores(this.props)); },componentwillUnmount() { stores.forEach(store => store.removechangelistener(this.handleStoresChanged) ); },handleStoresChanged() { if (this.isMounted()) { this.setState(this.getStateFromStores(this.props)); } } }; return Mixin; }
请用示例代码解释什么是“…”.谢谢!
解决方法
在该示例中,…是
Rest parameter,语法允许我们将无限数量的参数表示为数组.
它有点类似(或不是:),但它与spread syntax不同.
在您的示例中,stores参数内部是一个数组.如果函数StoreMixin(… stores)被调用,如StoreMixin(1,2,3),那么存储将是[1,3],依此类推.