5

ノードv0.6.12を使用しています

これは私のコードです:

var fs = require("fs");

fs.exists(".", function() {
    console.log("Whatever);
});

私はこの出力を得る:

node.js:201
        throw e; // process.nextTick error, or 'error' event on first tick
              ^
TypeError: Object #<Object> has no method 'exists'
    at Object.<anonymous> (/home/dbugger/Projects/nodetest/test.js:3:4)
    at Module._compile (module.js:441:26)
    at Object..js (module.js:459:10)
    at Module.load (module.js:348:32)
    at Function._load (module.js:308:12)
    at Array.0 (module.js:479:10)
    at EventEmitter._tickCallback (node.js:192:41)

「存在する」は廃止されましたか?私は何を使うことができますか?

4

4 に答える 4

6

使用できますpath.exists()が、ノードの最新バージョンでは非推奨です。推奨される API はfs.exists()最近のものであるため、ある時点で切り替える準備をする必要があります。

$ node --version
v0.8.3

$ node
> require('fs').exists
[Function]
> require('path').exists
[Function: deprecated]

関連ドキュメント:

于 2012-10-30T12:00:09.727 に答える
2

ノードのバージョンは?私のマシン(v0.6.14)でも同じ結果が得られます。exists()メソッドは最近pathモジュールからモジュールに移動したと思います。fs試すpath.exists()

于 2012-10-30T10:53:23.477 に答える
1

ノードの最新バージョン (0.8.12) にアップグレードすると問題が解決しました。ありがとう :)

于 2012-10-30T11:08:57.193 に答える
0

Raspberry Pi でも同じ問題が発生しました。走るだけなら

  sudo apt-get install nodejs npm 

これは NodeJs の最新バージョンをインストールしません。NodeJs の最新バージョンをインストールするには、このコマンドを実行します

  # Note the new setup script name for Node.js v0.10
  curl -sL https://deb.nodesource.com/setup_0.10 | sudo bash -

  # Then install with:
  sudo apt-get install -y nodejs

Raspberry Pi に Node.js v0.12 をインストールしようとしないでください。まだ未解決の問題があります ( https://raspberrypi.stackexchange.com/questions/24059/node-js-v0-11-14-exits-with-illegal-instruction )

上記の方法が機能しない場合は、この方法に従って ください https://learn.adafruit.com/node-embedded-development/installing-node-dot-js

于 2015-06-06T07:13:34.620 に答える