L'erreur suivante s'affiche lorsque j'essaie d'utiliser gulp-babel:
Erreur: impossible de trouver le préréglage "es2015" par rapport au répertoire "/ Utilisateurs/nom d'utilisateur"
Le préréglage es2015 est installé globalement et localement, je ne vois donc pas pourquoi cela poserait un problème.
Ci-dessous mon gulp mis en place et package.json.
var babel = require('gulp-babel');
var es2015 = require('babel-preset-es2015');
gulp.task('babel', function() {
return gulp.src('./app/main.js')
.pipe(babel({
presets: [es2015]
}))
.pipe(gulp.dest('dist'));
});
Package.json
"devDependencies": {
"babel-preset-es2015": "^6.3.13",
"babel-preset-es2015-node5": "^1.1.1",
"browser-sync": "^2.11.0",
"gulp": "^3.9.0",
"gulp-babel": "^6.1.1",
"gulp-stylus": "^2.2.0"
}
J'utilise le noeud v5.1.0 et babel v6.4.0
Voici la sortie du terminal
Il vous suffit d'installer babel-preset-es2015
:
Exemple d'utilisation de la CLI:
npm install babel-cli babel-preset-es2015
le "es2015" dans:
.pipe(babel({
presets: ['es2015']
}))
est en fait un chemin - donc si vous n'avez pas de préréglage dans le répertoire/Users/username/es2015, vous devez le pointer exactement comme par exemple:
.pipe(babel({
presets: ['../../gulp/node_modules/babel-preset-es2015']
}))
ça a fonctionné pour moi
Pour résoudre ce problème, vous devez supprimer le fichier .babelrc (caché) du répertoire "/ Utilisateurs/nom d'utilisateur".
Je viens d'utiliser ce gulpfile.js exact
var babel = require('gulp-babel');
var es2015 = require('babel-preset-es2015');
var gulp = require('gulp');
gulp.task('babel', function() {
return gulp.src('./app/main.js')
.pipe(babel({
presets: [es2015]
}))
.pipe(gulp.dest('dist'));
});
et cela a fonctionné pour moi. J'ai seulement installé babel
, babel-preset-es2015
et gulp-babel
.
Vérifiez si vous avez un fichier .babelrc dans le dossier racine de votre projet. Si ce n'est pas le cas, créez un fichier .babelrc et ajoutez ce qui suit:
{
"presets": ["es2015"]
}
Cela a résolu le problème.
J'ai rencontré le même problème et c'était parce que j'avais un fichier .babelrc
à la racine de mon répertoire.
Pour résoudre ce problème, ajoutez babelrc: false
dans les options de babel:
var babel = require('gulp-babel');
gulp.task('babel', function() {
return gulp.src('./app/main.js')
.pipe(babel({
babelrc: false,
presets: ['babel-preset-es2015']
}))
.pipe(gulp.dest('dist'));
});
J'avais le même problème et cette seconde suggestion m'a aidé à remarquer mon problème et peut-être aussi le vôtre.
Je npm install gulp-babel-es2015
ne l'a pas inclus dans le fichier gulp.
Alors, l'option babel({presets: ['es2015']})
est simplement une chaîne, comme indiqué dans les exemples suivants https://www.npmjs.com/package/gulp-babel .
Voici mon gulpfile.
var gulp = require('gulp'),
babel = require('gulp-babel');
gulp.task('babelify', () => {
gulp.src('js/*.js')
.pipe(babel({
presets: ['es2015']
}))
.pipe(gulp.dest('alljs'));
});
gulp.task('default', ['babelify']);
Aussi, à partir de ce numéro ici, https://github.com/laravel/elixir/issues/354
Nous vous suggérons de mettre à jour le noeud vers la version 5.x.x et npm vers la version 3.x.x.
Depuis le docs , vous devriez maintenant utiliser @babel/preset-env
au lieu de tout autre preset
mention
Le préréglage "env" existe depuis plus d'un an et remplace complètement certains des préréglages que nous avions suggérés plus tôt.
- babel-preset-es2015
- babel-preset-es2016
- babel-preset-es2017
- babel-preset-dernier
- Une combinaison de ce qui précède ^
yarn add @babel/preset-env
ou
npm install @babel/preset-env
Vous pouvez essayer d’installer es2015
et stage-2
via
npm i babel-preset-es2015 --save
npm i babel-preset-stage-2 --save
Mon problème était que l'autre programme utilisait un fichier impliqué dans le processus de compilation (probablement le .babelrc). Fermer plusieurs applications a résolu mon problème.
Pour moi, c'était Dropbox ou même Brackets Editor avec l'extension eqFTP.
Salutations
Lorsque je rencontre ce problème, j’ai déplacé les fichiers de xxx
vers xxx/server
. Et puis sous xxx/server
je verrai l'erreur Error: Couldn't find preset "es2015" relative to directory "/Users/username/xxx"
. La vraie raison est que j'ai oublié de déplacer ce fichier .babelrc
sous xxx
. Et après avoir déplacé ce .babelrc
vers xxx/server
, l'erreur disparaît.
Je viens d'avoir un très bizarre. J'ai installé tous les outils babel avec une grosse et longue commande npm install
, et tout est installé sans erreur ... sauf que l'erreur générée dans ce fil a été renvoyée au moment de l'exécution.
J'ai remarqué que la version 0.0.0 était dans le fichier package.json. J'ai donc lancé à nouveau npm install --save-dev babel-preset-es2015
. Cela a fonctionné et a placé une SECONDE clé dans mon fichier package.json:
"devDependencies": {
"babel-cli": "^6.24.1",
"babel-core": "^6.24.1",
"babel-polyfill": "^6.23.0",
"babel-preset-es2015": "^6.24.1",
"babel-preset-es2015": "0.0.0",
"babel-preset-stage-2": "^6.24.1",
"eslint": "^3.19.0"
}
Je viens de supprimer l'entrée ratée et il a effacé cette erreur relative to directory
.