Implémenter l'importation de modules dynamiques dans React Native Expo
P粉885562567
P粉885562567 2023-08-28 15:01:05
0
1
498
<p>Si mon application <strong>React Native</strong> (exécutée dans une application Expo Go) effectue actuellement une opération <code>import/from</code></p> <pre class="brush:php;toolbar:false;">importer Foo, {Bar} depuis "foo";</pre> <p>Comment puis-je convertir cela en une importation dynamique qui importe uniquement lorsqu'une certaine condition est remplie, par exemple lorsque <code>hello === "world"</code> ? </p> <p>Les actions suivantes entraîneront le blocage de l'application avec l'erreur <code>exception C++ non standard</code>. </p> <pre class="brush:php;toolbar:false;">if (hello === "world") { importer Foo, {Bar} depuis "foo" ; }</pré> <p>J'ai essayé la solution de contournement suivante, mais cela entraîne toujours un crash avec <code>exception C++ non standard</code> : </p> <pre class="brush:php;toolbar:false;">if (hello === "world") { const Foo = importer('foo') const Bar = Foo.Bar }</pre></p>
P粉885562567
P粉885562567

répondre à tous(1)
P粉744691205

Vous pouvez utiliser la fonction import() pour charger des modules de manière asynchrone. Voici un exemple :

let Foo;
let Bar;

if (hello === "world") {
  import("foo").then((module) => {
    Foo = module.default;
    Bar = module.Bar;
  });
}

Dans ce code, la fonction import() renvoie une promesse qui se résout en un objet module. L'attribut par défaut de l'objet module est affecté à la variable Foo et l'attribut Bar de l'objet module est affecté à la variable Bar.

Il convient de noter que la fonction import() est asynchrone, donc tout code qui repose sur des modules importés doit être placé dans la fonction de rappel then(). De plus, vous devez vous assurer que tout code qui repose sur des modules importés n'est exécuté qu'après le chargement du module.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!