답변:
ES6에서 import
s는 내 보낸 값에 대한 실시간 읽기 전용보기입니다. 결과적으로 수행 할 때 모듈에서 선언 한 방식에 관계없이 import a from "somemodule";
할당 할 수 없습니다 .a
a
그러나 가져온 변수는 라이브 뷰이므로 내보내기에서 "원시"내 보낸 변수에 따라 변경됩니다. 다음 코드를 고려하십시오 (아래 참조 기사에서 차용).
//------ lib.js ------
export let counter = 3;
export function incCounter() {
counter++;
}
//------ main1.js ------
import { counter, incCounter } from './lib';
// The imported value `counter` is live
console.log(counter); // 3
incCounter();
console.log(counter); // 4
// The imported value can’t be changed
counter++; // TypeError
보시다시피, 차이점은 실제로 lib.js
아닙니다 main1.js
.
요약:
import
모듈에서 해당 변수를 선언하는 방법에 관계없이 -ed 변수에 할당 할 수 없습니다 .let
-vs- const
의미는 모듈에서 선언 된 변수에 적용됩니다.
const
되면 어디에서나 재 할당하거나 리바운드 할 수 없습니다.let
되면 모듈에서만 재 할당 할 수 있습니다 (사용자는 제외). 변경되면 import
-ed 변수가 그에 따라 변경됩니다.
export
키워드 세부 사항은 여기 . 현재 모든 웹 브라우저에서 기본적으로 지원되지 않습니다.