我在使PostgreSQL使用react-native在本地计算机上运行时遇到问题。我主要以数据库开发人员的身份工作,因此很可能会遗漏某些东西,但我认为这应该有据可查。
我运行以下命令来创建React Native项目(npm v 4.6.1)
npm install -g expo cli
expo init needhelp
cd needhelp
然后将其粘贴到我的app.js文件中,它可以正常运行。这是我的app.js
文件。
import React, { Component } from 'react';
import { Text, View, Image } from 'react-native';
//const { Client } = require('pg')
//const { Pool, Client } = require('pg')
export default class HelloWorldApp extends Component {
render() {
return (
<View style = {{flex: 1, flexDirection: 'column', alignItems: 'center',}}>
<Text>Hello World!</Text>
</View>
);
}
}
问题是,当我尝试以任何方式包含pg时,都会出错。我得到的第一个错误是“无法解析模块pg”。然后,在运行npm install pg
之后,我得到
[22:32:20]位于“ node_modules \ pg \ lib \ index.js”的软件包试图导入节点标准库模块“ util”。它失败了,因为React Native不包括Node标准库。进一步了解https://docs.expo.io/versions/latest/introduction/faq.html#can-i-use-nodejs-packages-with-expo [22:32:20]无法构建JavaScript包。
然后在安装这个之后我得到:
[22:34:03]位于“ node_modules \ pg \ lib \ connection.js”的软件包试图导入节点标准库模块“ net”。它失败了,因为React Native不包括Node标准库。进一步了解https://docs.expo.io/versions/latest/introduction/faq.html#can-i-use-nodejs-packages-with-expo [22:34:03]无法构建JavaScript捆绑包。 构建JavaScript包[============================================== =======================================] 9>
然后
[2:36:57]位于“ node_modules \ pg \ lib \ client.js”的软件包试图导入Node标准库模块“ events”。它失败了,因为React Native不包括Node标准库。进一步了解https://docs.expo.io/versions/latest/introduction/faq.html#can-i-use-nodejs-packages-with-expo [22:36:57]无法构建JavaScript包。
然后
[00:38:48]位于“ node_modules \ pg \ lib \ connection.js”的软件包试图导入Node标准库模块“ tls”。它失败了,因为React Native不包括Node标准库。进一步了解https://docs.expo.io/versions/latest/introduction/faq.html#can-i-use-nodejs-packages-with-expo [22:38:48]无法构建JavaScript包。
最后,那注定我的错误:
地铁捆绑器遇到内部错误,请检查终端错误输出以获取更多详细信息。