Предисловие: Я новичок в Javascript, Babel и React-Native.React Native & Relay, совместимость. Официальный способ заставить их работать вместе?
Я разрабатываю свое приложение, используя пример TodoMVC из источника реле. Мне было интересно, можно ли легко заставить React-Native + Relay работать вместе?
Я установил свой babelRelayPlugin и добавил его к моему .babelrc. Я установил пакеты npm для «реакции-реле»: «^ 0.7.3» и «babel-relay-plugin»: «^ 0.7.3», но после запуска «npm install» и «response-native start» я либо получаю ошибка, говорящая «Непризнанный модуль« реле-реле »« ИЛИ »Реле не определено».
Отметить эту тему и посмотреть последний комментарий (https://github.com/facebook/relay/issues/26#issuecomment-194570137) похоже, что на данный момент я должен просто использовать TodoMVC в качестве базы для новых проектов React-Native + Relay.
Это правильно?
Вот мой .babelrc
{
"env": {
"development": {
"passPerPreset": true,
"presets": [
{
"plugins": [
"./plugins/babelRelayPlugin"
]
},
"react-native"
]
},
"server": {
"plugins": [
"./plugins/babelRelayPlugin"
],
"presets": [
"es2015",
"stage-0"
]
}
}
}
Вот мой package.json
{
"name": "testApp",
"version": "1.0.0",
"private": true,
"scripts": {
"clean:babelrc": "find ./node_modules -name react-packager -prune -o -name '.babelrc' -print | xargs rm -f",
"postinstall": "npm run clean:babelrc",
"start": "BABEL_ENV=server babel-node ./server.js",
"update-schema": "babel-node ./scripts/updateSchema.js"
},
"dependencies": {
"babel-preset-es2015": "^6.5.0",
"babel-preset-react-native": "^1.5.1",
"babel-preset-stage-0": "^6.5.0",
"babel-relay-plugin": "^0.7.3",
"express": "4.13.4",
"express-graphql": "0.4.9",
"graphql": "0.4.17",
"graphql-relay": "0.3.6",
"moment": "^2.12.0",
"node-fetch": "^1.4.1",
"react": "^0.14.5",
"react-native": "^0.22.2",
"react-native-animatable": "^0.5.2",
"react-native-aws3": "0.0.1",
"react-native-camera": "git+https://github.com/lwansbrough/react-native-camera.git",
"react-native-console-panel": "0.0.7",
"react-native-contacts": "^0.2.3",
"react-native-keyboard-aware-scroll-view": "0.0.6",
"react-relay": "^0.7.3",
"sync-request": "^3.0.0",
"uuid-v4": "^0.1.0"
},
"devDependencies": {
"babel-cli": "^6.6.4",
"flow-bin": "^0.22.1"
},
"engines": {
"npm": ">=3"
}
}
С новейшими релизами React Native (0.22) и Relay (0.7.3) теперь можно использовать их вместе из коробки. Не могли бы вы поделиться с вами своими .babelrc и package.json? Также место, где вы импортируете реле реакции. – freiksenet
Вот пример проекта, который я построил с помощью React Native и Relay, возможно, это предоставит вам некоторую ссылку. https://github.com/reindexio/reindex-examples/tree/master/react-native-gallery – freiksenet
@freiksenet только что обновил мое сообщение с babelrc и package.json. Спасибо за предоставление вашего пакета. Я посмотрю вашу настройку. –