Node-redis: TypeError:net.isIPは関数ではありません

作成日 2019年05月28日  ·  7コメント  ·  ソース: NodeRedis/node-redis

_node_redisで見つけた問題を報告していただきありがとうございます。 削除してください
このテキストと下のテンプレートに記入してください。 課題トラッカーはのみであることに注意してください
バグレポートまたは機能リクエスト用。 ご不明な点がございましたら、[gitter]でお尋ねください。
何かわからない場合は、できる限り最善を尽くしてください。_

_再現するテストケースを使用すると、問題の修正がはるかに簡単になることに注意してください
問題が提供されます。 もちろん、コードを減らすことが常に可能であるとは限りません。
小さなテストケースになりますが、できるだけ多くのデータがあることを高く評価しています。
ありがとうございました!_

  • バージョン:どのnode_redisとどのredisバージョンで問題が発生していますか? 2.8.0
  • プラットフォーム:どのプラットフォーム/バージョンですか? (たとえば、Windows 7 / Ubuntu 15.10 / Azure上のNode.js0.10またはNode.js5.7.0)Windows
  • 説明:問題の説明、エラーからのスタックトレース、および問題を再現するコード

こんにちはフォークス、
これを使用してRedisクライアントを作成しようとしています
var redis = require( 'redis');
var redisClient = redis.createClient({host: '127.0.0.1'、port:6379});

しかし、それは私にこのエラーをスローします
そうしないと {
82 | cnx_options.port = + options.port || 6379;
83 | cnx_options.host = options.host || '127.0.0.1';

84 | cnx_options.family =!options.family && net.isIP(cnx_options.host)|| (options.family === 'IPv6'?6:4);
| ^ 85 | this.address = cnx_options.host + ':' + cnx_options.port;
86 | } //非推奨の関数の誤用について警告する
87 |

誰かがこれに関する回避策を提案してください。

ありがとう

最も参考になるコメント

redisindex.jsファイルの3行目をvarnet = require( 'net-browserify');に変更したときに、同じ問題に直面しています。

確かにこれは適切な解決策または回避策ではありませんが、これは私が解決策を見つけるまで今のところ問題を修正します

全てのコメント7件

redisindex.jsファイルの3行目をvarnet = require( 'net-browserify');に変更したときに、同じ問題に直面しています。

確かにこれは適切な解決策または回避策ではありませんが、これは私が解決策を見つけるまで今のところ問題を修正します

この問題が発生しているノードのバージョンはどれですか?

redisindex.jsファイルの3行目をvarnet = require( 'net-browserify');に変更したときに、同じ問題に直面しています。

確かにこれは適切な解決策または回避策ではありませんが、これは私が解決策を見つけるまで今のところ問題を修正します

ここでもこの方法で修正されています。 ありがとう。

あなたは私のヒーローです。 どうもありがとう!

この問題はどうですか? 私は同じ問題に直面しています!!!!!

npx create-react-app test_redis_react --typescript
cd test_redis_react

糸はredisを追加します
info直接の依存関係
└─[email protected]
infoすべての依存関係
├─[email protected]
├─[email protected]
├─[email protected]
├─[email protected]
└─[email protected]
✨8.19秒で完了しました。

App.tsxをこのように修正しました

'react'からReactをインポートします。
'./logo.svg'からロゴをインポートします。
インポート './App.css';

関数App(){
const redis = require( 'redis');
let client:any = redis.createClient(6379、 "127.0.0.1"、{db:3});
client.get( "key"、redis.print);

return (
        <div className="App">
            <header className="App-header">
            <p>
            Edit <code>src/App.tsx</code> and save to reload.
            </p>
            </header>
        </div>
       );

}

デフォルトのアプリをエクスポートします。

それは間違っています!!!

より良い開発体験のためにReactDevToolsをダウンロードしてください
index.js:67 Uncaught TypeError:net.isIPは関数ではありません
新しいRedisClient(index.js:67)で
Object.push ../ node_modules / redis / index.js.exports.createClient(index.js:1022)で
アプリで(App.tsx:7)
renderWithHooks(react-dom.development.js:14803)で
mountIndeterminateComponent(react-dom.development.js:17482)で
beginWorkで(react-dom.development.js:18596)
HTMLUnknownElement.callCallback(react-dom.development.js:188)で
Object.invokeGuardedCallbackDev(react-dom.development.js:237)で
invokeGuardedCallback(react-dom.development.js:292)で
beginWork $ 1で(react-dom.development.js:23203)
performUnitOfWork(react-dom.development.js:22157)で
workLoopSync(react-dom.development.js:22130)で
performSyncWorkOnRoot(react-dom.development.js:21756)で
scheduleUpdateOnFiber(react-dom.development.js:21188)で
updateContainer(react-dom.development.js:24373)で
react-dom.development.js:24758で
unbatchedUpdatesで(react-dom.development.js:21903)
legendRenderSubtreeIntoContainer(react-dom.development.js:24757)で
Object.renderで(react-dom.development.js:24840)
Module ../src/index.tsx(index.tsx:7)で
__webpack_require __(bootstrap:784)で
fnで(ブートストラップ:150)
Object.1(serviceWorker.ts:149)で
__webpack_require __(bootstrap:784)で
checkDeferredModules(bootstrap:45)で
Array.webpackJsonpCallbackで[プッシュとして](bootstrap:32)
main.chunk.js:1で

node --version
v12.18.3

npm --version
6.14.6

App.tsxでネットを印刷しました。
このような結果:

ネット:
物体
__プロト__:
コンストラクター:ƒObject()
hasOwnProperty:ƒhasOwnProperty()
isPrototypeOf:ƒisPrototypeOf()
propertyIsEnumerable:ƒpropertyIsEnumerable()
toLocaleString:ƒtoLocaleString()
toString:ƒtoString()
valueOf:ƒvalueOf()
__defineGetter __:ƒ__defineGetter__()
__defineSetter __:ƒ__defineSetter__()
__lookupGetter __:ƒ__lookupGetter__()
__lookupSetter __:ƒ__lookupSetter__()
get __proto __:ƒ__proto__()
set __proto __:ƒ__proto__()

ネットモジュールはnode.jsのベースモジュールですが、このtsxファイルにはありません!!!
どうして? そして、どうすればよいですか?

このページは役に立ちましたか?
0 / 5 - 0 評価