Liebe Leute, als ich mir das ES6-Einführungs-Tutorial von Lehrer Ruan Yifeng angesehen habe, habe ich einen Abschnitt viele Male gelesen, ihn aber immer noch nicht verstanden
Es ist zu beachten, dass der Exportbefehl die externe Schnittstelle angibt und eine Eins-zu-eins-Entsprechung mit den Variablen innerhalb des Moduls herstellen muss.
// 报错
export 1;
// 报错
var m = 1;
export m;
Die beiden oben genannten Schreibmethoden melden Fehler, da keine externe Schnittstelle bereitgestellt wird. Die erste Schreibweise gibt 1 direkt aus, und die zweite Schreibweise gibt 1 direkt über die Variable m aus. 1 ist nur ein Wert, keine Schnittstelle. Die richtige Schreibweise ist wie folgt.
// 写法一
export var m = 1;
// 写法二
var m = 1;
export {m};
// 写法三
var n = 1;
export {n as m};
Die oben genannten drei Schreibweisen sind alle korrekt und geben die externe Schnittstelle m an. Andere Skripte können über diese Schnittstelle den Wert 1 erhalten. Ihr Kern besteht darin, eine Eins-zu-eins-Entsprechung zwischen dem Schnittstellennamen und den internen Variablen des Moduls herzustellen.
Was genau ist hier mit dieser „Schnittstelle“ gemeint?
für
// 报错
function f() {}
export f;
// 正确
export function f() {};
Was ist der Unterschied?
你不妨直接看一看语法是如何规定的:
ta说的接口就是
expression
即表达式,用通俗的话说就是不是常量(固定值)的那么一种东西。另外,你可以用default这样写:
因为
m = 1
是一个表达式。其它地方你可以直接import m from ...
然后 m 的值就是1.