ここで何が欠けているのかわかりません。私は 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
ますundefined
。ファイルを次のように変更すると:
import {hooks} from 'bigcommerce/stencil-utils';
hooks.on('cart-item-add', (event, form) => {
// do stuff
});
正しく動作します。そのため、デフォルトの export ステートメントで何かが正しく機能していないようです。この問題の原因となる import または export ステートメントに明らかに問題があるのでしょうか?