브라우저에서 ES 모듈 사용 : 현재 상태 및 향후
코어 포인트 :
Safari, Chrome, Firefox 및 Edge와 같은 주류 브라우저는 이제 ES6 모듈의 구문을 지원하므로보다 효율적이고 표준화 된 코드 구조가 가능합니다.
ES6 모듈의 지원이 계속 개선되고 있지만 Babel 및 Webpack과 같은 도구는 브라우저가 계속 최적화되어 필수 불가결합니다. HTTP2의 다중 재료 스트리밍 기능과 브라우저 프리 로딩 기능을 결합한 ES 모듈은 상당한 성능을 향상시킬 것으로 예상됩니다.
import
를 사용하는 것입니다
요구 사항
프로토콜에서 작동하지 않기 때문에 를 사용하려면 서버가 필요합니다. 로컬 테스트를 위해 현재 디렉토리에서 서버를 시작하려면
를 사용하여 서버를 시작할 수 있습니다.
<🎜 🎜> <<> 성능 를 바인딩 해야하는 이유
http2 및 서버 푸시 http2는 하나의 리소스 만 전송할 수있는 http1.1에 비해 단일 응답으로 여러 리소스를 푸시 할 수 있습니다. 이것은 네트워크 라운드 트립을 최소화하는 데 도움이됩니다.
<,>이 예에서는 <🎜
지금 프로덕션에서 이것을 시도 할만 큼 대담한 경우, 오래된 브라우저에 대해 별도의 패키지를 만들어야합니다. 폴리 필은 사양을 따르는
// html.js
export function tag (tag, text) {
const el = document.createElement(tag)
el.textContent = text
return el
}
<🎜>
// app.js
import { tag } from './html.js'
const h1 = tag('h1', '? Hello Modules!')
document.body.appendChild(h1)
type="module"
<<> 예압 <🎜 🎜>
<<> 근처의 브라우저에 나타납니다. 브라우저는 모든 모듈을 하나씩 구문 분석 할 필요가 없으므로 아래에 표시된 네트워크 폭포를 생성합니다 ...
link rel="modulepreload"
// html.js
export function tag (tag, text) {
const el = document.createElement(tag)
el.textContent = text
return el
}
<🎜>
html.js
, <🎜 lib.js
> 단일 요청으로 전달 될 수 있습니다.
// app.js
import { tag } from './html.js'
const h1 = tag('h1', '? Hello Modules!')
document.body.appendChild(h1)
/
index.html
app.js
(여기에 es6 모듈 양식을 삽입해야 할 수 있습니까?)
html.js
(FAQ 부분은 여기에 삽입되어야합니다. 내용은 원본 텍스트와 동일)
위 내용은 오늘날 브라우저에서 ES 모듈을 사용합니다의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!