<!DOCTYPE html>
<html lang="ko">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<script src="/static/js/exportScript.js"></script>
<title>기본 HTML</title>
</head>
<body onload="onBodyLoad();">
<script type="text/javascript">
function onBodyLoad() {
exportScript.consoleTest();
}
</script>
</body>
</html>
별 특별한게 없는 기본 HTML 파일에서
webpack 으로 말아서 올린 exportScript.js 에 있는 `consoleTest()` function 을 쓰고자 하니까 아래와 같은 오류가 발생했다.
에러 메세지 그대로, 외부에 있는 module 을 사용할 수 없다는 뜻이었고.
해결은 CDN 선언부에서 script type 을 "module" 로 지정해주니까 되었다.
<!-- before -->
<script src="/static/js/exportScript.js"></script>
<!-- after -->
<script type="module" src="/static/js/exportScript.js"></script>
덧, exportScript.js 는 window 에 event 바인딩이 되지 않아서 맨 밑에 저 라인까지 추가해주었다.
export let exportScript = {
...
};
window.exportScript = exportScript;
반응형
댓글