2017-02-23 7 views
1

Ich sah, dass es die __DEV__ Variable gibt, und ich möchte meine eigene hinzufügen, sagen __USE_THIS__. Dann stelle ich das ein, wenn das Xcode-Projekt erstellt wird, aber ich weiß nicht, wie ich das an den js-Teil weitergeben soll. Kann ich das Bundle-Skript verwenden und es dort irgendwie weitergeben? Wann ist die __DEV__ eingestellt, und wie?Setze reagiere native globale Variable von Xcode

+0

Sie möchten einen Variablenwert an die js-Datei übergeben? – Codesingh

+1

thi sieht irgendwie ähnlich aus: https://github.com/luggit/react-native-config – Cherniv

+0

Ich möchte etwas wie "__USE_THIS__ = true" übergeben, und in diesem Fall wird die js etwas anderes tun, als wenn es falsch wäre (standardmäßig). – pvinis

Antwort

2

Sie könnten Target/Scheme-spezifische Variablen für Javascript verfügbar machen, indem Sie sie während der Erstellungsphase in eine Datei schreiben und sie dann in das Javascript importieren.

1) Fügen Sie den folgenden zu "Bundle Reagieren nativen Code und Bilder" unter für Ihr Ziel "Phase Build":

export NODE_BINARY=node 
echo '{"target": "MyTarget"}' > ../build-info.json 
../node_modules/react-native/packager/react-native-xcode.sh 

Example screenshot from xcode

2) Importieren Sie sie zum Beispiel in der Javascript, in wenn man durch so etwas wie react-native-config stattdessen möglich sein, eine Datei zu $ ​​PROJECT_ROOT/.env zu schreiben und es verwenden, index.ios.js

import buildInfo from '../../build-info.json' 
console.log(buildInfo.target) 

es sollte auch bevorzugen