Я использую этот учебник, чтобы настроить проект React.js с помощью webpack. Ниже приведена точная копия webpack.config.js(за исключением того, что я использую папку app
и 'dist'), и я также добавляю d3.js как external
. Поскольку React добавлен как external
, он позволяет мне делать require('react')
в любом из моих файлов приложений, не включая его в комплект. Я хочу сделать то же самое с d3.js
и установил его как node_module и перечислил его во внешней области моей конфигурации webpack, но когда я делаю require('d3')
, я получаю сообщение об ошибке, которое оно недоступно.
Как я могу использовать d3
(или jQuery, если на то пошло) как внешний, если я установил его как node_module?
это моя настройка проекта
/app
/dist
/node_modules
package.json
webpack.config.js
module.exports = { entry: './app/index.jsx', output: { path: './dist', filename: 'bundle.js', //this is the default name, so you can skip it //at this directory our bundle file will be available //make sure port 8090 is used when launching webpack-dev-server publicPath: 'http://localhost:8090/assets' }, module: { loaders: [ { //tell webpack to use jsx-loader for all *.jsx files test: /\.jsx$/, loader: 'jsx-loader?insertPragma=React.DOM&harmony' } ] }, externals: { //don't bundle the 'react' npm package with our bundle.js //but get it from a global 'React' variable 'react': 'React', 'd3': 'd3' }, resolve: { modulesDirectories: ['app', 'node_modules'], extensions: ['', '.js', '.jsx'] } }