私は、ネイティブプロジェクトに反応してノードjsをバックエンドとして使用したいと思います。反応するネイティブアプリケーション内でnodejsコードを使用できますか?
答えて
はい ReactNativifyを使用してノード用に書かれたパッケージをBig Richとして正当な状態で使用してください。しかし、考慮すべき いくつかの点:
1)私は、問題リストで見つかったアドバイスに従い、2部でtransformer.js
を分割:
transformers.js(/config
中とrn-cli.config.js
から起動):
/config
で)
const babelTransformer = require('./babel-transformer');
module.exports.transform = function(src, filename, options) {
const extension = String(filename.slice(filename.lastIndexOf('.')));
let result;
try {
result = babelTransformer(src, filename);
} catch (e) {
throw new Error(e);
return;
}
return {
ast: result.ast,
code: result.code,
map: result.map,
filename
};
};
バベル-transformer.js:
'use strict'
const babel = require('babel-core');
/**
* This is your `.babelrc` equivalent.
*/
const babelRC = {
presets: ['react-native'],
plugins: [
// The following plugin will rewrite imports. Reimplementations of node
// libraries such as `assert`, `buffer`, etc. will be picked up
// automatically by the React Native packager. All other built-in node
// libraries get rewritten to their browserify counterpart.
[require('babel-plugin-rewrite-require'), {
aliases: {
constants: 'constants-browserify',
crypto: 'react-native-crypto',
dns: 'mock/dns',
domain: 'domain-browser',
fs: 'mock/empty',
http: 'stream-http',
https: 'https-browserify',
net: 'mock/net',
os: 'os-browserify/browser',
path: 'path-browserify',
pbkdf2: 'react-native-pbkdf2-shim',
process: 'process/browser',
querystring: 'querystring-es3',
stream: 'stream-browserify',
_stream_duplex: 'readable-stream/duplex',
_stream_passthrough: 'readable-stream/passthrough',
_stream_readable: 'readable-stream/readable',
_stream_transform: 'readable-stream/transform',
_stream_writable: 'readable-stream/writable',
sys: 'util',
timers: 'timers-browserify',
tls: 'mock/tls',
tty: 'tty-browserify',
vm: 'vm-browserify',
zlib: 'browserify-zlib'
},
throwForNonStringLiteral: true
}],
// Instead of the above you could also do the rewriting like this:
["module-resolver", {
"alias": {
"mock": "./config/mock",
"sodium-universal": "libsodium"
}
}]
]
};
module.exports = (src, filename) => {
const babelConfig = Object.assign({}, babelRC, {
filename,
sourceFileName: filename
});
const result = babel.transform(src, babelConfig);
return {
ast: result.ast,
code: result.code,
map: result.map,
filename
};
}
2)上記のコードでわかるように、私はbabel-plugin-module-resolver
を使って実演しました。
注:ReactNativeが使用するプラグインの代わりにこのプラグインを使用します。それはあなたがローカルファイルを参照することができ、かつ適切な引用符で書かれた「ナトリウム - ユニバーサル」
注2のような非JS準拠の名前を許可またはこのコメントに概説されているよう.babelrc
溶液(多分クリーン)のために行く:https://github.com/philikon/ReactNativify/issues/4#issuecomment-312136794
3)Jestテストの作業をするために、プロジェクトのルートにまだ.babelrc
が必要であることがわかりました。 https://github.com/philikon/ReactNativify/issues/8
PSノードバインドの多い場所に移植しようとしていたパッケージですから、別のアプローチも検討しています:[AndroidのネイティブライブラリとしてのNodeJSのコンパイル](https://stackoverflow.com/q/) 45459909/8295283) –
非常に有用な要約、ありがとう。 –
@ArnoldSchrijver概要をお寄せいただきありがとうございます。私はあなたのアプローチを採用しようとしましたが、エラー:バンドルに失敗しました:TypeError:transform.jsの 'undefined of slice'プロパティを読み取れません。特に 'const extension = String(filename.slice(filename.lastIndexOf( '。'))); ' 何故? –
- 1. 反応したネイティブアプリケーションでの使用法
- 2. 反応するネイティブアプリケーションでcanOverrideExistingModuleの問題
- 3. 私の反応ネイティブアプリケーションをios Xcodeで実行できません
- 4. 反応するネイティブアプリケーションのアイコンバッジのライブラリ
- 5. androidの反応ネイティブアプリケーションでのFacebookログイン
- 6. 反応するネイティブテキストでblockquoteを使用できますか?
- 7. デバイス上の反応するネイティブアプリケーションでchrome inspectを使用するにはどうすればよいですか?
- 8. 反応アプリケーション内に反応ポータルを表示することはできますか?私が使用
- 9. 核種を使用して反応ネイティブアプリケーションをデバッグ
- 10. iOSデバイスで反応ネイティブアプリケーションをコマンドラインから直接実行しますか?
- 11. inisideを効率的にスクロールできないネイティブアプリケーションに反応する
- 12. 反応プロジェクトでdotenvを使用できますか?
- 13. 反応フレームワークでpug(ex-jade)を使用できますか?
- 14. NodeJS HTTPレスポンス内でTwilio Authy APIを使用できますか?
- 15. 反応ナビゲーションを使用する反応ネイティブアプリケーションのアクションからナビゲートするにはどうすればよいですか?
- 16. 反応するネイティブアプリケーション名にスペースを追加するには?
- 17. 反応してノードモジュールを使用できますか?
- 18. ハイブリッドアプリケーション専用のMBaaSですか、ネイティブアプリケーションにも使用できますか?
- 19. Elm内で反応成分を使用する方法はありますか?
- 20. イメージが反応するネイティブアプリケーションのListView内に表示されない
- 21. 反応カスタムスクロールバーで反応自動提案を使用する
- 22. ネイティブアプリケーションでwin32を使用する
- 23. 反応成分/オーバーレイ反応成分で反応成分DidMountを使用する
- 24. Webpackを使用しているときにファイルを解析できませんでした。反応する、反応する、反応する
- 25. ランタイムを使用してネイティブアプリケーションでファイルを開きます。 (Windows 7)
- 26. ビュー内でWebViewを使用できますか(ネイティブ対応)?
- 27. 反応に還元反応を使用する理由は何ですか?
- 28. 反応サーバーでcsurfを使用する
- 29. 反応ルータでアンカーを使用する
- 30. Charts.jsを反応で使用する
WebServiceを構築することを念頭に置いている場合は、アプリケーションとそのバックエンドがhttpを介して通信するため、すべてを行うことができます。 – Hitmands
返信いただきありがとうございます。http: //www.w3resource.com/node.js/nodejs-sqlite.php)私はまったく同じですが、ネイティブの反応が必要です。 –
Webサービス用に別のコードを使いたくないので、ネイティブプロジェクトに対応するためにノードjsコードを使用します。それは可能ですか? –