我有这个文件夹结构:
Parent /
Child-A /
src /
modules /
Module-A.js
Module-B.js
Module-C.js
Module-D.js
Main-A.js
Child-B /
src /
Main-B.js
我想在MainB.js中导入ModuleA.js。请注意,ModuleA.js没有导出,如果这甚至意味着什么(我是ES6的新手)。它看起来像这样:
import { showNotification } from './Notification';
$( document ).on( 'click', '[data-action="load-more"]', ajaxCall );
function ajaxCall() {
...
}
function addNewPosts() {
...
}
function notifyError() {
...
}
我尝试在Main-B.js中添加这行代码导入模块:
import '../../Child-A/src/modules/Module-A.js'
但由于某种原因,这会导入整个Main-A.js,而不仅仅是Module-A.js
有什么想法吗?
+++ UPDATE +++
再详细说明一下,这里是Main-A.js代码,它导入了Child-A项目中的所有模块:
// Stylesheets
import './style.scss';
// Libraries
import 'salvattore';
import 'jquery-lazy';
// Custom Scripts
import './modules/Module-A';
import './modules/Module-B';
import './modules/Module-C';
import './modules/Module-D';
这里是来自Child-B项目的Main-B.js文件:
// Stylesheets
import './style.scss';
// Libraries
import 'salvattore';
// Custom Scripts
import '../../Child-A/src/modules/Module-A.js';
就像我说的,在这个Main-B.js文件中我只想导入Module-A;但是我这样做会导致Child-A项目中的所有模块被导入,我知道,因为其他模块中的功能也在Child-B项目中工作,即使我不是明确导入它们,我无法理解它们为什么会工作。
我正在为每个项目使用模块捆绑器(Webpack)。