我不确定我在这里缺少什么。我正在使用 jspm 和 es6-module-loader 完成一个项目。我定义了一个模块,如下所示:
import hooks from './hooks';
import api from './api';
import tools from './tools';
const StencilUtils = {
hooks: hooks,
api: api,
tools: tools,
};
export {hooks, api, tools};
export default StencilUtils;
/* global define */
(function(root) {
if (typeof define === 'function' && define.amd) {
define(function() {
return (root.stencilUtils = StencilUtils);
});
} else if (typeof module === 'object' && module.exports) {
module.exports = StencilUtils;
} else {
window.stencilUtils = StencilUtils;
}
}(this));
我在另一个文件中导入了这个模块,并使用以下方式:
import utils from 'bigcommerce/stencil-utils';
utils.hooks.on('cart-item-add', (event, form) => {
// do stuff
});
当文件加载时,我会收到一个错误消息,提示utils
未定义。如果我将文件更改为以下内容:
import {hooks} from 'bigcommerce/stencil-utils';
hooks.on('cart-item-add', (event, form) => {
// do stuff
});
它可以正常工作。因此,似乎默认的导出语句存在一些问题。这里的导入或导出语句是否有明显错误会导致此问题?