Reactjs 用redux响应预加载程序图标
我是react/redux新手,尝试将此预加载程序库与react/redux一起使用: 尝试使用浏览器控制台时,我在浏览器控制台中遇到此错误: 未捕获错误:addComponentAsRefTo(…):只有ReactOwner可以有引用。您可能正在向组件的Reactjs 用redux响应预加载程序图标,reactjs,react-redux,Reactjs,React Redux,我是react/redux新手,尝试将此预加载程序库与react/redux一起使用: 尝试使用浏览器控制台时,我在浏览器控制台中遇到此错误: 未捕获错误:addComponentAsRefTo(…):只有ReactOwner可以有引用。您可能正在向组件的render方法中未创建的组件添加引用,或者您已加载多个副本 我在容器组件Books'渲染方法中使用它 为什么我会犯这个错误 这是什么意思 使用预紧器组件的正确方法是什么 class Books extends React.Componen
render
方法中未创建的组件添加引用,或者您已加载多个副本
我在容器组件Books'渲染方法中使用它
- 为什么我会犯这个错误
- 这是什么意思李>
- 使用预紧器组件的正确方法是什么
class Books extends React.Component { constructor(props, context) { super(props, context); this.redirectToAddBookPage = this.redirectToAddBookPage.bind(this); } createBookRow(book, index) { return <div key={index}>{ book.title }</div>; } redirectToAddBookPage() { browserHistory.push('/book'); } render() { const {books} = this.props; return ( <div> <h1>Books</h1> <input type="submit" value="Add new book" className="btn btn-primary" onClick={this.redirectToAddBookPage}/> <PreloaderIcon type={ICON_TYPE.OVAL} size={32} strokeWidth={3} strokeColor="#F0AD4E" duration={800} /> <BookList books={books}/> </div> ); } } Books.propTypes = { books: PropTypes.array.isRequired, }; function mapStateToProps(state, ownProps) { return { books: state.books }; } export default connect(mapStateToProps)(Books);
类库扩展了React.Component{ 构造函数(道具、上下文){ 超级(道具、背景); this.redirectToAddBookPage=this.redirectToAddBookPage.bind(this); } createBookRow(书本,索引){ 返回{book.title}; } 重定向到AddBookPage(){ browserHistory.push('/book'); } render(){ const{books}=this.props; 返回( 书 ); } } Books.propTypes={ 书籍:需要PropTypes.array.isRequired, }; 函数mapStateToProps(状态,ownProps){ 返回{ 图书:国家图书 }; } 导出默认连接(MapStateTops)(书籍);
rm-rf node_模块和npm安装我多次加载react,因此状态在react的多个实例之间共享。。。我通过将其添加到我的
webpack.config.js
文件中解决了这个问题,强制应用程序只使用node\u modules/react
文件夹中的“主”依赖项:
resolve: {
alias: {
'react': path.join(__dirname, 'node_modules', 'react')
}
}
阅读更多