Electron: problèmes de chargement des fichiers javascripts avec requireJS

Créé le 26 mai 2014  ·  3Commentaires  ·  Source: electron/electron

Je travaille sur un projet depuis des mois maintenant et j'aimerais utiliser Atom pour intégrer l'application. Le projet utilise requireJS et je n'ai jamais rencontré de problème de chargement de scripts sur la version web ou même sur la construction node-webkit cependant, avec Atom, les scripts ne se chargent pas correctement.

J'ai fait un petit exemple pour illustrer le problème. C'est une version mac.
https://github.com/cniaulin/loading-issue

Clonez le référentiel, lancez Atom.app. Regardez si le moment est défini, si oui cmd + r, vous verrez que ce n'est pas toujours le cas.
Vous pouvez afficher la console avec cmd + alt + i
Les fichiers se trouvent ici : Atom.app/Contents/Resources/app/

Quelqu'un a-t-il une solution ou un contournement ?

Commentaire le plus utile

@cniaulin Une solution de contournement consisterait à libérer la variable require en la renommant autre chose avant de charger require.js comme suit :

<script>
  if (window.require) {
    window.nodeRequire = window.require;
    delete window.require;
  }
</script>

Vous devrez appeler nodeRequire où vous voulez appeler la version Node.js de require .

Tous les 3 commentaires

Salut, tout ce que je sais à propos de requireJs, c'est qu'ils ont une méthode requise similaire avec un nœud en conflit, essayez d'utiliser requirejs comme méthode de substitution.

Meilleure pratique : utilisez npm pour installer des packages/modules de nœud uniquement dans le répertoire node_modules des projets, mais ne configurez pas RequireJS pour qu'il regarde dans le répertoire node_modules. Évitez également d'utiliser des ID de module relatifs pour référencer des modules qui sont des modules de nœud uniquement. Donc, ne faites pas quelque chose comme require("./node_modules/foo/foo").

chercher plus loin pour http://requirejs.org/docs/node.html

@cniaulin Une solution de contournement consisterait à libérer la variable require en la renommant autre chose avant de charger require.js comme suit :

<script>
  if (window.require) {
    window.nodeRequire = window.require;
    delete window.require;
  }
</script>

Vous devrez appeler nodeRequire où vous voulez appeler la version Node.js de require .

Je ferme ceci car il n'est pas prévu de prendre en charge requireJS dans atom-shell.

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