web-dev-qa-db-fra.com

Angular 6 - le processus n'est pas défini lorsque vous essayez de servir l'application

J'obtiens l'erreur suivante lorsque j'essaie de servir mon angular 6 application en utilisant cosmicjs:

Uncaught ReferenceError: process is not defined
    at Object../node_modules/cosmicjs/dist/index.js (index.js:6)
    at __webpack_require__ (bootstrap:81)
    at Object../src/app/app.component.ts (main.js:94)
    at __webpack_require__ (bootstrap:81)
    at Object../src/app/app.module.ts (app.component.ts:9)
    at __webpack_require__ (bootstrap:81)
    at Object../src/main.ts (environment.ts:18)
    at __webpack_require__ (bootstrap:81)
    at Object.0 (main.ts:12)
    at __webpack_require__ (bootstrap:81)

Ma dernière théorie a quelque chose à voir avec la propriété process.env non définie.

Je suis ce tutoriel ici

et mon code exact peut être trouvé ici

Le tutoriel semble utiliser une ancienne version de angular qui utilise .angular-cli.json au lieu du nouveau angular.json et je pense que cela fait partie du problème en essayant de spécifier l'environnement variables.

9
Danoram

Dans polyfill.ts, ajoutez cette ligne:

(window as any).process = {
  env: { DEBUG: undefined },
};

Référence: https://github.com/algolia/algoliasearch-client-javascript/issues/691


Ou npm i -S process, puis ajoutez ceci à polyfill.ts:

import * as process from 'process';
window['process'] = process;
17
A T

Il s'agit d'une incompatibilité avec Angular v6. Ils support supprimé (shim) des variables process et global dans le navigateur.

Je vous suggère d'utiliser Angular 5, jusqu'à ce que cosmic.js corrige l'erreur. Peut-être pouvez-vous même ouvrir un problème pour cela.

6
Daniel Habenicht

Il s'agit d'une incompatibilité avec Angular 6. Ils ont supprimé le support (shim) des variables de processus et globales dans le navigateur.

L'ajout de ce qui suit avant votre fermeture dans votre index.html supprimera l'erreur.

<script>
  var global = global || window;
  var Buffer = Buffer || [];
  var process = process || {
    env: { DEBUG: undefined },
    version: []
  };
</script>
4
Gurjeet singh