ES 6 export注意事項
1838 ワード
JavaScriptモジュールを作成するとき、export文はモジュールから関数、オブジェクト、または元の値をエクスポートするために使用され、他のプログラムが
export
まずexportエラーの書き方を解決します
書き方を誤る
デフォルトのエクスポートでは、var、let、constを使用してデフォルトのexport defaultをエクスポートすることはできません.
どうやってエクスポートしますか?名前付きエクスポート:importコマンドを使用する場合、ユーザーはロードする変数名または関数名 を知る必要があります.デフォルトエクスポート:importコマンドを使用する場合、ユーザーはロードする変数名または関数名を知る必要はありません.値またはモジュールの戻り値をエクスポートする場合は、デフォルトエクスポート: を使用します.
次に、別のスクリプトで、デフォルトのエクスポートを直接インポートできます.
いけない書き方
デフォルト値export defaultをエクスポートするにはvar、let、constは使用できません.
import
文を使用して別のモジュールからエクスポートされたバインディングをインポートできるようにします.strict modeが宣言されているかどうかにかかわらず、インポートされたモジュールは厳格なモードで実行されます.ブラウザでは、import文はtype=「module」を宣言したscriptのラベルでのみ使用できます.「)文は使用されます.MDNを参照してください.export
まずexportエラーの書き方を解決します
書き方を誤る
//
var m = 1;
export m;
//
export {m}
// import import {m} from './export.js'
デフォルトのエクスポートでは、var、let、constを使用してデフォルトのexport defaultをエクスポートすることはできません.
どうやってエクスポートしますか?
//
function cube(x) {
return x * x * x;
}
const foo = Math.PI + Math.SQRT2;
//
var graph = {
options: {
color:'white',
thickness:'2px'
},
draw: function() {
console.log('From graph draw function');
}
}
export { cube, foo, graph };
\\ :
import { cube, foo, graph } from 'my-module';
graph.options = {
color:'blue',
thickness:'3px'
};
graph.draw();
console.log(cube(3)); // 27
console.log(foo); // 4.555806215962888
// module "my-module.js"
export default function cube(x) {
return x * x * x;
}
次に、別のスクリプトで、デフォルトのエクスポートを直接インポートできます.
// module "my-module.js"
import cube from 'my-module';
console.log(cube(3)); // 27
いけない書き方
// const a = 1; export default a;
export default const a = 1;
//export default [const|let|var] variable = xxx
デフォルト値export defaultをエクスポートするにはvar、let、constは使用できません.