Come risolvere il nodo JS “Errore di sintassi: importazione imprevisto token” se si utilizzano moduli JavaScript

Affinché nodo di moduli di esportazione è necessario assegnare ogni funzione, oggetto o variabile, che richiede da esportare, come proprietà dei modules.exports oggetto.

 

Esportazione

In questo esempio il file di modulo è robot.js. ogni funzione, oggetto o una variabile che vorremmo mettere a disposizione di altri file li facciamo proprietà dell'oggetto esportazione.

robot.js (file di modulo)

exports.sayHello =

(msg) => console.log('Hello peeps!')


exports.hello = "Ciao!"


exports.greetings =

  { Inglese : "Ciao!",

    francese : "Buongiorno!",

    spagnolo: "Ola!"

  }

 

Importazione

Nodo non supporta l'istruzione import, pertanto, il vecchio richiedono funzione deve essere utilizzato per l'importazione.

Qui importiamo robot.js (Nota: .js possono facoltativamente essere lasciati nella funzione require) e assegnarlo a un oggetto che possiamo chiamare nulla. Noi assegniamo il nome del robot. Il nostro obiettivo robot detiene ora i nostri moduli esportati da robot.js

Siamo in grado di usarlo come segue…

app.js (file principale)

const robot = richiedono('./robot')


robot.sayHello()

console.log(robot.hello)

console.log(robot.greetings.french)

Ricordate di usare il nome dell'oggetto che si è scelto in prima linea quando si utilizza la variabile modulo, funzione o un oggetto.

Nota: I browser non supportano la dichiarazione richiedere. Pertanto non è possibile utilizzare la funzione di modulo di importazione richiedono con i browser senza utilizzare un transpiler come Babel o un bundler come Browserify.

ReferenceError Uncaught - richiedono non è definito in Opera browser V51
Require Modulo funzione di importazione in JavaScript non è supportata in Web Browser