Pour un jour maintenant, je ne comprends pas pourquoi babel pour gulp ne fonctionne pas pour moi, ou j'ai tort de connecter les modules ...
L'erreur dans le navigateur est comme ceci:
Uncaught ReferenceError: require is not defined
at main.min.js:1
- Je brancher les modules suivants:
import focusVisible from "focus-visible";
Code main.min.js fichier:
"use strict";var e;(e=require("focus-visible"))&&e.__esModule;
Gulp tâche:
const { src, dest, series, watch, parallel } = require('gulp'),
fileinclude = require('gulp-file-include'),
rename = require("gulp-rename"),
uglify = require('gulp-uglify-es').default,
babel = require("gulp-babel"),
notify = require("gulp-notify"),
browserSync = require("browser-sync").create()
const changingScripts = () => {
return src(['src/js/main.js', 'src/js/pages/**/*.js'])
.pipe(babel())
.pipe(fileinclude())
.pipe(dest('dist/js'))
.pipe(uglify({
toplevel: true
}).on('error', notify.onError()))
.pipe(rename({
extname: '.min.js'
}))
.pipe(dest('dist/js'))
.pipe(browserSync.stream())
}
Le package.fichier json est comme ceci:
{
"name": "project_name",
"version": "1.0.0",
"description": "some description of the project",
"scripts": {},
"keywords": ["keyword_1", "keyword_2", "keyword_3"],
"author": "project_author",
"license": "ISC",
"devDependencies": {
"@babel/core": "^7.16.0",
"@babel/eslint-parser": "^7.16.3",
"@babel/preset-env": "^7.16.4",
"@babel/register": "^7.16.0",
"browser-sync": "^2.27.7",
"eslint": "^8.2.0",
"eslint-config-airbnb-base": "^15.0.0",
"eslint-plugin-import": "^2.25.3",
"gulp": "^4.0.2",
"gulp-babel": "^8.0.0",
"gulp-file-include": "^2.3.0",
"gulp-notify": "^4.0.0",
"gulp-rename": "^2.0.0",
"gulp-uglify-es": "^3.0.0"
}
}
L' .babelrc fichier ressemble à ceci:
{
"presets": ["@babel/preset-env"]
}
Il semble que tout a appliqué ce qui est nécessaire.
Si vous pouvez aider, je vous en seront reconnaissants.
L'ensemble du projet coincé à cause de cette erreur ...
Il est conseillé de résoudre le problème sans l'aide de Webpack
:)