Je voudrais charger un module javascript dans JavascriptCore (sur iOS).Chargement du module AMD dans JavaScriptCore
Je récupère le texte du fichier via une requête HTTP normale du côté iOS. Donc je peux analyser cette chaîne entière dans le JScontext.
Mais maintenant je voudrais charger ce module, et idéalement, résoudre toutes les autres dépendances, bien que ce ne soit pas essentiel.
J'ai essayé using requireJS pour le noeud, mais il semble avoir beaucoup d'erreurs de dépendance, et c'est peut-être un peu démodé.
J'ai aussi essayé de voler, mais je ne suis pas sûr que ce soit le bon chemin non plus. J'ai aussi essayé ça. Essentiellement je veux faire ce que js fait dans le navigateur, mais dans un environnement javascript pur (pas de navigateur, pas de noeud).
Je veux aussi regrouper tout bas à l'aide browserify, et ont regardé des choses comme ça - RequireJS load string
Le problème est, quand je vais à browserify le code, (nécessitant, requirejs) le processus échoue avec les dépendances non trouvées ?
Quelqu'un peut-il me diriger dans la bonne direction?
Merci pour les commentaires! Ai-je raison de dire que, en termes de javascriptcore, je vais devoir écrire mon propre chargeur asynchrone? Je ne m'intéresse principalement qu'à JScore ou à un équivalent androïde, car requirejs fonctionne parfaitement pour moi dans le navigateur en ce moment. Je suis actuellement en train de charger dynamiquement des chemins personnalisés pour chaque module (afin de pouvoir rediriger les modules sur des serveurs différents, en fonction de l'environnement) et cela fonctionne bien. Savez-vous quelque chose sur la construction de votre propre chargeur de module, et comment cela serait différent par rapport à l'utilisation d'Eval? –
Oh oui tout à fait. Check this out: https://github.com/parris/twitch_stream_search/blob/master/src/utils/simpleRequire.js#L24 J'ai fondamentalement fait mon propre chargeur de module complètement asynchrone ici. N'hésitez pas à lire le reste de la bibliothèque pour obtenir une image plus complète.C'est fondamentalement un environnement exigeant-comme dans juste quelques lignes. Maintenant, un autre problème que vous pourriez avoir est que vous ne pouvez pas charger les fichiers localement en utilisant le protocole file: //. Si vous chargez à partir d'un serveur, cela devrait fonctionner. Voir cette réponse SO: https://stackoverflow.com/questions/20829481/ajax-code-without-web-server – Parris