webpack4 大纲概论-targets(十)

https://v4.webpack.js.org/concepts/targets/
targets
因为webpack同时支持前后端,webpack为其提供不同的部署目标在配置文件中
注意 target 属性不能和 output.libraryTarget 属性混淆
使用,webpack.config.js:

module.exports = {
  target: 'node'
};

如上,使用 node 的时候,用 require 加载模块,而不用其他的构建方式如 fs 或 path
每一个 target 都有各种特定于部署/环境的添加、支持,以满足其需求
多个目标,webpack不支持多个字符串传递到目标属性,可以通过绑定两个单独的配置创建同构库(multiple targets)

webpack.config.js :

const path = require('path');
const serverConfig = {
  target: 'node',
  output: {
    path: path.resolve(__dirname, 'dist'),
    filename: 'lib.node.js'
  }
  //
};
const clientConfig = {
  target: 'web', // <=== can be omitted as default is 'web'
  output: {
    path: path.resolve(__dirname, 'dist'),
    filename: 'lib.js'
  }
  //
};
module.exports = [ serverConfig, clientConfig ];

将会创建 lib.js 和 lib.node.js 在 dist 文件夹中

 

posted @ 2022-09-01 17:46  jqynr  阅读(43)  评论(0)    收藏  举报