2012-07-23 12 views
18

Sto cercando di creare un app node.js eNode.js Alert causa l'arresto

alert('Sample Alert'); 

sta causando il mio programma in crash. Nodo dice

ReferenceError: alert is not defined

e quindi si chiude. Posso usare la funzione alert quando eseguo javascript su una normale pagina html, quindi non riesco a capire perché questo è ... È un modulo separato che devo usare con node.js?

Grazie in anticipo.

+8

nulla al di fuori [questo] (http://ecma-international.org/ecma-262/5.1/) non è javascript regolare – Esailija

+1

@Esailija - Tecnicamente regolare JavaScript * dovrebbe * avere 'avviso 'dato che JavaScript è un ramo di ECMAScript normalmente implementato nei browser. Quello che volevi dire era probabilmente ECMAScript. –

risposta

42

La funzione alert() è una proprietà degli oggetti del browser window. Non è veramente parte di JavaScript; è solo una funzionalità disponibile per il codice JavaScript in quell'ambiente.

Prova console.log("Hello World"); funzione

+6

Quello che stai chiedendo non ha alcun senso, davvero.Il tuo codice server può inviare un errore come parte di una risposta a una richiesta HTTP e quindi, a sua volta, alcuni ** codici ** separati JavaScript in esecuzione nel browser client possono presentare un avviso. Questo avrà molto poco a che fare direttamente con il codice JavaScript che comprende l'applicazione lato server. – Pointy

6

alert() è disponibile solo quando si esegue JavaScript nel contesto particolare di finestre del browser. È disponibile tramite l'oggetto window.

Node.js non è progettato per la scrittura di applicazioni desktop (direttamente). È principalmente destinato alla scrittura di applicazioni JavaScript lato server. Puoi usare i seguenti framework/pacchetti (e molti altri) se vuoi sviluppare vere applicazioni desktop.

  • Electron
  • NW.js (precedentemente, nodo-webkit)

    NW.js is an app runtime based on Chromium and node.js . You can write native apps in HTML and JavaScript with NW.js. It also lets you call Node.js modules directly from the DOM and enables a new way of writing native applications with all Web technologies.

  • AppJS

    Available as an standalone distributable and an npm package


Nel frattempo, è possibile utilizzare console.log() per generare un messaggio in Node.js.

console.log('hello'); 
0

Mentre queste risposte sono "corrette", in quanto non v'è alcuna funzione di allarme disponibili al di fuori del browser, non c'è ragione non è possibile creare uno e poi utilizzarla:

node -e "function alert(x){ 
      x === 'undefined' ? console.log('undefined') : console.log(x); return; 
     }; 
     alert('x'); alert();" 

risultati:

x 
undefined 

Quindi potrebbe non essere necessario modificare il codice o l'esempio esistente o qualsiasi altra cosa.

0

Avrai anche bisogno del codice per attendere una chiave. Ecco un inizio:

process.stdin.on('char', function() { 
    var chunk = process.stdin.read(); 
    if (chunk !== null) { 
    process.stdout.write('data: ' + chunk + 'got?\n'); 
    } 
}); 
Problemi correlati