2012-10-30 11 views
5

Im usando nodo v0.6.12fs.exists doesnt esistono più in node.js

Questo è il mio codice:

var fs = require("fs"); 

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

ottengo questo output:

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) 

ha " esiste "stato deprecato? Cosa posso usare allora?

+1

Quale versione di nodo di fatto si prova? Includere il risultato di 'console.log (process.version);' - In 0.8.14, ['fs.exists'] (http://nodejs.org/api/fs.html#fs_fs_exists_path_callback) esiste. ma ricordo anche che in 0.6.16 era chiamato 'path.exists'. –

+0

Sto usando v0.6.12: Ive ha provato fs.path.exists, ma non funziona neanche. –

risposta

6

È possibile utilizzare path.exists() ma è deprecato nell'ultima versione del nodo. L'API preferita è fs.exists() in questi giorni, quindi dovrai essere pronto a passare a un certo punto.

$ node --version 
v0.8.3 

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

La documentazione rilevanti:

2

Qual è la versione del nodo? Ottengo lo stesso risultato sulla mia macchina (v0.6.14). Penso che il metodo exists() sia stato spostato di recente dal modulo path al modulo fs. Prova path.exists()

+0

Im usando v0.6.12. Ho provato "fs.path.exists" e non funziona né –

+0

Non 'fs.path.exists'. il percorso è un modulo separato. 'var path = require ('percorso'); path.exists ('.', function (... ' –

1

Ok, l'aggiornamento all'ultima versione del nodo (0.8.12) ha risolto il problema. Grazie :)

0

Ho anche avuto stesso problema nel Raspberry Pi. Perché se eseguiamo semplicemente

sudo apt-get install nodejs npm 

questo non installerà l'ultima versione di NodeJs. Per installare la versione più recente di NodeJs eseguire questo comando

# 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 

Non tentare di installare Node.js v0.12 su Raspberry Pi. C'è un problema irrisolto è ancora lì (https://raspberrypi.stackexchange.com/questions/24059/node-js-v0-11-14-exits-with-illegal-instruction)

Se il metodo precedente non funziona, seguire questo https://learn.adafruit.com/node-embedded-development/installing-node-dot-js

Problemi correlati