# विभिन्न targets के लिए build करना — Webpack

Source: https://www.geekswithgeeks.com/hi/webpack/webpack-14

> विभिन्न environments के लिए Webpack को configure करें।

## Multi-target builds

Web applications को browsers, Node.js libraries और web workers के लिए विभिन्न builds की जरूरत है। Browser के लिए target: 'web' set करें, Node.js के लिए 'node'। प्रत्येक target यह affect करता है कि Webpack globals और imports को कैसे handle करता है।

## Build targets को configure करें

Deployment environment के आधार पर target set करें।

```javascript
module.exports = (env) => ({
  target: env.target || 'web',
  // target options:
  // 'web': browser (default)
  // 'node': Node.js
  // 'webworker': web worker
  // 'electron-main': Electron main process
  entry: './src/index.js',
  output: { filename: 'bundle.js' }
});
```

Output:

```
npm run build -- --env target=node
```

## Target built-ins को affect करता है

Browser target missing APIs को polyfill करता है। Node target Node built-ins को expose करता है। Web worker target को DOM की जरूरत वाले code को disable करता है।

त्वरित जाँच

**Quiz:** Node.js library के लिए कौन सा target use करना चाहिए?

- [x] 'node' Node built-ins को enable करने के लिए।
- [ ] 'web' browser compatibility के लिए।
- [ ] 'electron' cross-platform के लिए।

*Answer:* 'node' Node built-ins को enable करने के लिए।. 'node' target Node.js built-ins को ensure करता है कि available हों और bundled न हों।
