4

Node アプリケーションをデバッグすると、ObjectId がObjectID {id: RýÕ/H}実際の読み取り可能な ID ではなく、意味不明な Unicode で表されます。これがスクリーンショットです。誰がこれを引き起こしているのか知っていますか?

Crunchbang Waldorf x64 で WebStorm 7.0.1 を使用しています。

更新: node-inspector をチェックインした後、同じ結果が得られます: http://i.imgur.com/8dxOGhd.png

ObjectId を正しく表示できるのは、Robomongo (MongoDB GUI) でチェックするか、Node アプリ内からコンソールにログを記録する場合だけです。

4

3 に答える 3

3

残念ながら、これが WebStorm の現在の動作方法です。object.toString()必要に応じて、デバッグ時に使用して簡単に評価できます。WebStorm がわかりやすいものを表示する代わりに、バイナリ表現を表示しています。ObjectID.

于 2013-11-11T01:27:21.770 に答える
0

この本から Node.js と MongoDB の演習を行っているときに、同じ問題が発生しました: https://leanpub.com/nodecraftsman。私が話しているコードは、83 ページの 12 行にあります。

コマンドラインからすべてを実行してテストしていました。

私が発見したのは、コードの 1 行 (12 行目) に console.dir(documents) が含まれていることでした。これを console.log(documents) に変更したところ、予想どおりの ID が返されました。たとえば、Té\o2/Öy!M:\u0015 の意味不明な文字ではなく、54e95c6f322fd679214d3a18 のようなものです。

MDN は console.dir() を「非標準」と説明しているため、何かおかしなことが起こっている可能性があります。詳細: https://developer.mozilla.org/en-US/docs/Web/API/Console/dir

于 2015-02-22T04:54:52.220 に答える
0

これは WebStorm のバグです。彼らはここで問題を追跡しています:

https://youtrack.jetbrains.com/issue/WEB-9945

于 2016-02-02T15:47:20.550 に答える