运行此代码时,它会向我显示此错误:
每个模块只允许一次默认导出
在1.4.x.x中它是工作文件,但在新的它显示我这个错误...任何人都可以建议我应该做的事情:
1)从1.5.x.x转回1.4.x.x. 2)如果是这样,那么建议我使用稳定版本
import {createContainer} from 'meteor/react-meteor-data';
import { Stus } from '../api/stus';
APP.JSX
export default class App extends Component{
constructor(props){
super(props);
this.state={stus:[]};
}
App.propTypes={
stus: PropTypes.array.isRequired,
};
export default createContainer(()=>
{
Meteor.subscribe('stus');
return {
stus: Stus.find({},{sort : {myname : 1} } ).fetch(),
};
},App);
答案 0 :(得分:2)
我认为你应该坚持使用更新的版本并修复你的代码。您不能有2个默认值。此外,如果您未在未创建容器的情况下使用App
组件,则甚至不需要将其导出
class App extends Component{
constructor(props){
super(props);
this.state={stus:[]};
}
}
export default createContainer(()=> { /* ... */ }, App);
答案 1 :(得分:0)
原来你的问题正是错误信息。 javascript规范不允许多个默认导出。毕竟,如果您要导入模块,您希望获得哪个模块?
如果要导出多个内容,请使用命名导出:
export const App = class App extends Component {};
export const myContainer = createContainer(() => {}, App);
然后可以按名称导入:
import { App, myContainer } from './myModule.js';