首页 > 解决方案 > 名为 export 的 Javascript 导出所有内容,而不仅仅是命名的内容

问题描述

我有一个带有要导出的函数的 JS 模块,同一个文件也有 JQuery 事件,比如on click事件,当我只导出我想要的函数时,事件也会被导出,这会导致它们在我的网站上重复。

我怎样才能只导出我想要的功能?

示例代码:文件 1:

function a {...}
function b {...}

(function() {...})();
$('asdf').on('click', function(event) {...});

export{ a, b };

文件 2:

import { a, b } from './file1.js';

// Events appear here too!

我正在使用 webpack 并为每个模块生成一个 JS 文件。

标签: javascripteventsimportexport

解决方案


我像这样更改导入语句

这对我有用。

文件1.js

function a() {
     console.log("foo");
}
function b() {
    console.log("bar");
}

(function() {})();
$('asdf').on('click', function(event) {});

export{ a, b };

main.js

import * as MyFn from './file1'

MyFn.a();
MyFn.b();

推荐阅读