Using PubNub with React Native

2020-04-07 18:49发布

问题:

Has anybody been able to integrate PubNub with React Native?

The PubNub support team told me to use the pubnub_browserify package and it should work. However when I do require('pubnub_browserify') I get an error that the http module could not be found:

Unable to resolve module http from /Users/jfender/Documents/Workspace/KaiwaReact/node_modules/pubnub_browserify/browserify_node/pubnub.js: Invalid directory /Users/node_modules/http

Running npm install http --save doesn't change the error.

I am using Node v5.1.0, npm 3.3.12 and React Native 0.14.2.

Here is my package.json:

{
  "name": "KaiwaReact",
  "version": "0.0.1",
  "private": true,
  "scripts": {
    "start": "react-native start"
  },
  "dependencies": {
    "eslint": "^1.10.0",
    "eslint-plugin-react": "^3.9.0",
    "parse": "^1.6.9",
    "parse-react": "^0.5.0",
    "pubnub_browserify": "^1.0.2",
    "react-native": "^0.14.2"
  }
}

回答1:

I was able to integrate it. I used the standard javascript package. However, I did need to modify it a bit. Mostly to remove all the references to 'window' and to 'abort'. Once I removed those, I was good to go.



回答2:

PubNub has a new Javascript SDK (v4). You should be able to add the dependency in your package.json file and import it in your code. Here's a quick example of an app that is subscribing to a PubNub channel.

https://github.com/girishd/ReactPubNub



回答3:

Please try using https://www.npmjs.com/package/pubnub (version 3.7.16) (npm install pubnub) This version works with react-native