Feathers: [Question] Exporter, importer des modules

Créé le 20 juil. 2017  ·  3Commentaires  ·  Source: feathersjs/feathers

Actuellement, mon projet est basé sur feather-cli et j'ai besoin d'utiliser le module d'importation et d'exportation au lieu de require
Mais j'ai eu l'erreur SyntaxError: Unexpected token export lorsque j'essaie d'utiliser l'importation, l'exportation.
J'ai vu un problème qui faisait que la plume redevenait commonjs.
Je comprends après https://github.com/feathersjs/feathers/issues/608 approuver et fusionner, je peux utiliser l'importation, l'exportation sans erreur.
Donc ma question est que puis-je faire pour utiliser l'importation et l'exportation au lieu de require ?

Commentaire le plus utile

Vous pouvez utiliser babel-register pour amorcer votre code pendant son exécution.

// package.json
}
  "dependencies": {
  "babel-preset-es2015": "^6.24.1",
  "babel-register": "^6.24.1",
  ...
}
// .babelrc
{
  "presets": ["es2015"]
}



md5-d9dbd6153ad663c52db1c46098188247



```js
// server.js < your actual code here
import express from 'express';
export const run () => {
     const app = express()
     ......
}

Ou vous pouvez simplement transpiler le code en utilisant babel au cas où vous ne voudriez pas utiliser babel-register à l'exécution.

Tous les 3 commentaires

Vous pouvez utiliser babel-register pour amorcer votre code pendant son exécution.

// package.json
}
  "dependencies": {
  "babel-preset-es2015": "^6.24.1",
  "babel-register": "^6.24.1",
  ...
}
// .babelrc
{
  "presets": ["es2015"]
}



md5-d9dbd6153ad663c52db1c46098188247



```js
// server.js < your actual code here
import express from 'express';
export const run () => {
     const app = express()
     ......
}

Ou vous pouvez simplement transpiler le code en utilisant babel au cas où vous ne voudriez pas utiliser babel-register à l'exécution.

L'application générée n'utilisera toujours que ce que la dernière version de Node prend en charge (nous la mettrons probablement à jour pour utiliser async/await pour la prochaine version). Vous pouvez trouver plus de raisons de ne pas utiliser Babel par défaut dans https://github.com/feathersjs/generator-feathers/issues/31 et une discussion dans https://github.com/feathersjs/feathers-cli/issues /91 (y compris les défis de la mise à jour de nos codemods générateurs vers la nouvelle syntaxe).

En résumé, l'utilisation de modules ES avec Babel augmentera le temps de démarrage/compilation et éventuellement la consommation de mémoire juste pour utiliser une spécification dont les détails d'implémentation (en particulier pour Node) n'ont pas été entièrement finalisés.

Si vous souhaitez toujours l'utiliser, vous pouvez probablement exécuter le code généré via un transformateur de module requis vers ES avec la configuration Babel indiquée par @zusamann .

Ce problème a été automatiquement verrouillé puisqu'il n'y a eu aucune activité récente après sa fermeture. Veuillez ouvrir un nouveau problème avec un lien vers ce problème pour les bogues associés.

Cette page vous a été utile?
0 / 5 - 0 notes