Mysql
 sql >> Database >  >> RDS >> Mysql

Riferimento nullo dal modulo del driver MySQL da taskpane.js un componente aggiuntivo di Microsoft Office

Questo non funzionerebbe, dal momento che stai cercando di utilizzare una libreria del server mysql nel tuo front-end. Sebbene entrambi siano scritti in javascript, gli ambienti su cui stanno lavorando sono molto diversi.

Il diagramma seguente lo spiega in modo abbastanza ordinato:tratto da questo sito Web che ti consiglio di controllare.

In sostanza, per la libreria react, stai usando node.js come *.jsx o *.js build helper, packaging runner, ecc. quindi il risultato finale dovrebbe essere solo un file javascript. Qualcosa come main.123456.js se stai usando la build predefinita dell'app create react. Quel file sarà significativo nel contesto del browser, dal momento che qui avrai elementi DOM, elementi specifici per HTML.

Per la libreria MySQL:stai usando node.js come server HTTP. Questo non avrà accesso al DOM, ma poiché è in esecuzione come processo su alcune unità di calcolo, ti fornirà diverse capacità, che consentiranno alla tua connessione MySQL di funzionare.

office.js opera nel contesto del browser, stai fondamentalmente scrivendo la tua app con react e facendo solo riferimento ad alcune API di office.js. Ciò significa che la riga seguente appartiene alla tua app react:

context.document.body.insertParagraph("mysql undefined", Word.InsertLocation.end);

Tuttavia, i tuoi dati da MySQL devono provenire dal tuo server. Puoi utilizzare node.js come server, in questo modo sarai in grado di utilizzare la libreria MySQL che hai importato da NPM. Questo tutorial spiega come configurare un server molto semplice.

Ciò significa questa riga

import { mysql } from 'mysql';

e la connessione sql appartiene al lato server in esecuzione sul nodo.