使用webpack externals打包后报错Uncaught ReferenceError:xxx is not defined

Externals是什么?

Externals 配置选项提供了「从输出的 bundle 中排除依赖」的方法。相反,所创建的 bundle 依赖于那些存在于用户环境(consumer's environment)中的依赖。此功能通常对 library 开发人员来说是最有用的,然而也会有各种各样的应用程序用到它。
防止将某些 import 的包(package)打包到 bundle 中,而是在运行时(runtime)再去从外部获取这些扩展依赖(external dependencies)

来看下官方给出的例子:
从 CDN 引入 jQuery,而不是把它打包:
index.html



webpack.config.js

module.exports = {
  //...
  externals: {
    jquery: 'jQuery'
  }
};

这样就剥离了那些不需要改动的依赖模块,换句话,下面展示的代码还可以正常运行:

import $ from 'jquery';

$('.my-element').animate(/* ... */);

即如果使用了externals而没有从外边引用,就会在运行时产生报错
使用webpack externals打包后报错Uncaught ReferenceError:xxx is not defined_第1张图片
image.png

你可能感兴趣的:(使用webpack externals打包后报错Uncaught ReferenceError:xxx is not defined)