Javascript module.exports无法设置未定义的属性

Javascript module.exports无法设置未定义的属性,javascript,ecmascript-6,es6-modules,Javascript,Ecmascript 6,Es6 Modules,我试图将所有react组件移动到单独的回购协议中,以便它们可以共享。我得到了上面的错误 ui-react/index.js 'use strict'; import Button from "./components/Button/Button"; module.exports.Button = Button; FileB import {Button} from 'ui-react'; 当我这样做的时候,我会得到一个错误调用 'ui-react' does not contain

我试图将所有react组件移动到单独的回购协议中,以便它们可以共享。我得到了上面的错误

ui-react/index.js

'use strict';

import Button from "./components/Button/Button";

module.exports.Button = Button;
FileB

import  {Button} from  'ui-react';
当我这样做的时候,我会得到一个错误调用

'ui-react' does not contain an export named 'Button' 

PS:在ui react的package.json中,我已将main设置为index.js,并尝试导入“ui react/index”

无需编写module.exports。你可以写

export { Button };

为什么要使用
module.exports
而不是
export{Button}?通常混合模块格式是个坏主意。缺乏足够的知识!:)你能分享更多关于ES6模块语法的链接吗<代码>需要
模块。导出
是可选的
CommonJS
模块格式的一部分。最重要的是,你不应该真的同时使用两者。一些构建工具确实允许这样做,但它通常会导致类似这样的混乱。这个答案被低估了,文档也被低估了!所有节点模块文档都指向
module.exports