lukeed / lukeed/webpack-plugin-replace
ERROR in http.min.js from Terser
Personne n'a encore pris cette issue.
- Langage dominant
- JavaScript
- Étoiles
- 36
- Forks
- 8
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
When I set webpack config `mode: 'production'`,it throw error:
```
ERROR in http.min.js from Terser
"Export" statement may only appear at the top level [http.min.js:1161,0]
```
But when I set `mode: 'development'`,it works...I can't figure out why.
```js
// http.js
const http = () => {}
http.version = '__version__';
export default http;
```
```js
// webpack.build-lib.js
const path = require('path');
const ReplacePlugin = require('../lib/webpack-plugin-replace');
const rootPath = path.resolve(__dirname, '..');
const pkg = require('../package.json');
const libName = 'http';
const entryFile = path.resolve(rootPath, `src/${libName}.js`);
module.exports = {
entry: entryFile,
mode: 'production',
output: {
path: path.resolve(rootPath, 'lib'),
filename: `${libName}.min.js`,
libraryTarget: 'umd2',
libraryExport: 'default',
},
plugins: [
new ReplacePlugin({
exclude: [
/node_modules/,
],
patterns: [{
regex: /__version__/g,
value: pkg.version,
}],
}),
],
};
```
Guide de contribution
Aucun guide de contribution indexé pour ce dépôt
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par http.js et webpack.build-lib.js, puis exécutez le build de production qui utilise mode: 'production' et Terser, et comparez-le au build de développement. Suivez comment la sortie de ReplacePlugin atteint lib/http.min.js et déterminez pourquoi l’exportation ne se trouve plus au niveau supérieur. C’est terminé lorsque le build de production s’achève sans l’erreur Terser signalée.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- javascript
- Domaine
- build-system
- Type d'issue
- Bug
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 45/100