有没有人成功完成此操作并拥有可用的代码库?特别是当我尝试使用neo4j驱动程序时,它开始抱怨无法找到一堆真正基本的模块(断言,http,缓冲区,网络等)。我试过了node-neo4j和neo4j-driver。
我尝试逐个安装这些模块,但这似乎不对。
请注意,这是特定于react-native,如果我在前端使用正常反应而在后端使用nodejs它似乎工作正常
我从代码中取出几乎所有东西来隔离问题。
工作:
import React, { Component } from 'react';
import {
AppRegistry,
StyleSheet,
Text,
TextInput,
View,
BackAndroid,
Navigator,
ToolbarAndroid,
TouchableHighlight,
Alert
} from 'react-native';
class AwesomeProject extends Component {
render() {
return (
<Text>HI</Text>
)
}
}
AppRegistry.registerComponent('AwesomeProject', () => AwesomeProject);
无效:
import React, { Component } from 'react';
import {
AppRegistry,
StyleSheet,
Text,
TextInput,
View,
BackAndroid,
Navigator,
ToolbarAndroid,
TouchableHighlight,
Alert
} from 'react-native';
var neo4j = require('neo4j-driver').v1;
var driver = neo4j.driver("bolt://localhost", neo4j.auth.basic("neo4j", "neo4j"));
var session = driver.session();
class AwesomeProject extends Component {
render() {
return (
<Text>HI</Text>
)
}
}
AppRegistry.registerComponent('AwesomeProject', () => AwesomeProject);
答案 0 :(得分:0)
npm install net
将解决这种依赖性。
答案 1 :(得分:0)
这可以通过以下方式完成:
运行npm install -g browserify
导航到项目的路由文件夹,并创建一个名为neo4j-in.js
的新文件,其中包含以下几行:
var neo4j = require("neo4j-driver");
module.exports = neo4j
运行browserify neo4j-in.js -o neo4j.js
在文本编辑器中打开新的neo4j.js
文件,搜索单词require
的所有实例(甚至函数),并用reqq
替换每个单词。
在脚本的最上方添加一行,内容为var neo4j;
搜索行module.exports = neo4j;
(将在脚本底部附近)并将其移至所有功能之外脚本底部的新行。
将文件另存为neo4j.js
,并将其与所有其他软件包一起移到node_modules
文件夹中。
将行var neo4j = require('neo4j-driver').v1;
更改为var neo4j = require('neo4j')
我们收到此错误,因为React Native不包含Javascript neo4j驱动程序所需的核心节点JS模块,但是我们可以通过创建一个独立的Javascript文件来解决此问题,该文件包含neo4j驱动程序模块的polyfill。对于其他也依赖于核心节点JS模块的软件包,也可以做到这一点。如果您需要更多信息,这是一个详尽的解释。 https://hackernoon.com/using-core-node-js-modules-in-react-native-apps-64acd4d07140