Javascript 使用网页包传输ES6模块后,模块未导出
我已经开发了一个小软件包 在src版本中,我有一个导出语句:Javascript 使用网页包传输ES6模块后,模块未导出,javascript,reactjs,webpack,ecmascript-6,Javascript,Reactjs,Webpack,Ecmascript 6,我已经开发了一个小软件包 在src版本中,我有一个导出语句: export class Select extends React.Component { render() { return ( ...the component ) } } 当我在此表单中使用此组件时,我可以这样导入它: 从“Select react redux”导入{Select} 但是,在我将带有webpack的包绑定到lib目录后,我得到了一个输出文件,我希
export class Select extends React.Component {
render() {
return (
...the component
)
}
}
当我在此表单中使用此组件时,我可以这样导入它:
从“Select react redux”导入{Select}
但是,在我将带有webpack的包绑定到lib目录后,我得到了一个输出文件,我希望它的内容与原始文件相同,但是是ES5而不是ES6
捆绑文件包含:
var Select=exports.Select=function\u React$Component{}
这意味着Select组件应该对我可用,但它不是
非常感谢您的帮助。在package.json中,我看到您的定义如下:
"main": "src/index.js",
因为您已经在src/index.js中编写了ES6代码,所以您需要一个合适的加载程序来按原样使用包。但是通过查看您的网页配置,我发现您已经在lib/index.js中传输了代码。因此,您需要将包的入口点指定为:
"main": "lib/index.js"
导出语句应为以下任一项
export default class Select extends React.Component {
render() {
return (
...the component
)
}
}
//import
import Select from 'select-react-redux'
或
希望这有帮助 谢谢你的回答。他们都是正确的,但他们没有为我解决这个问题。我花了两天时间试图解决这个问题,我确信这是一个网页问题。使用相同的源文件,但使用babel编译这些文件,可以正确导出模块 巴别塔src/-d库/ 我还使用了类似这样的导出选项,在index.js文件的lib文件夹的根目录中。这样,当我添加更多组件时,它将更加模块化
import {Select} from './Select';
export {Select as Select};
无法从中导出所选内容。-请显示其传输的确切目的。由于它可以很好地导出文件,所以捆绑版本的文件被捆绑并最小化,如下所示:请仅提供未缩小的相关部分。在捆绑文件中,我发现:var Select=exports.Select=function\u React$Component{},这意味着它正在被导出。。。但是为什么我不能导入它?相应地更改您的问题。你现在有什么问题还不清楚。
import {Select} from './Select';
export {Select as Select};