작성
·
508
3
안녕하세요
TypeError: compiler.plugin is not a function
위와 같은 에러가 떠서 compiler를 찍어봤더니 plugin이 존재하지 않아서 undefined라고 뜹니다.
이 방식을 사용하면 똑같이 나오는데
버전이 바뀐 것인가요?
답변 3
4
웹팩 5에서 실습해보려 하는 분들
아래 코드처럼 해보세요.
class MyPlugin {
apply(compiler) {
compiler.hooks.done.tap("My Plugin", (stats) => {
console.log("MyPlugin worked");
});
compiler.hooks.emit.tapAsync("My Plugin", (compilation, callback) => {
console.log(
"compilation.assets['main.js']",
compilation.assets["main.js"].source()
);
callback();
});
}
}
module.exports = MyPlugin;
0
0
강의에서 사용한 웹팩은 4 버전이고, 아마 위에서 실습하신건 최신 버전인 5버전인 것 같네요. BannerPlugin 코드를 참고한것인데 웹팩 버전 4 기준으로 작성된 코드입니다. 질문해 주셔서 감사합니다.
이렇게 하면 될 것 같습니다!