2017-06-15 5 views
0

ich habe bereits versucht mongodb über npm zu installieren, aber ich halte Fehler immer ich kann nicht Modul „fs“wie mongo db in vue js 2 zu importieren?

und mein Code wie diese

<script> 
 
const MongoClient = require('mongodb').MongoClient; 
 
\t export default { 
 
\t \t data(){ 
 
\t \t \t return{ 
 
\t \t \t \t msg:'this is a test' 
 
\t \t \t } 
 
\t \t }, 
 
\t \t created:function(){ 
 
\t \t \t MongoClient.connect('mongodb://127.0.0.1:27017', (err, database) => { 
 
\t \t \t \t if (err){ 
 
\t \t \t \t \t console.log('1'); 
 
\t \t \t \t }else{ 
 
\t \t \t \t \t console.log('2'); 
 
\t \t \t \t } 
 
\t \t \t }) 
 
\t \t } 
 
\t } 
 
</script>
<template> 
 
\t <div> 
 
\t \t {{msg}} 
 
\t </div> 
 
</template>

so wie Sie aussehen finden Importieren Sie Mongodb in mein Vuejs 2-Framework?

+0

Vue läuft im Browser. MongoDB läuft auf einem Server, es kann nicht in einem Browser ausgeführt werden. Was Sie versuchen, ist technisch unmöglich. Stattdessen müssen Sie einen Webserver einrichten (zum Beispiel mit expressjs), der auf MongoDB zugreift und dann über AJAX mit dem Browser und dem Server kommuniziert. –

+0

habe es, aber meine Frage ist, wie man Daten sendet und Daten von Mongodb erhält? Ich weiß, wie man das mit Express macht, aber ich bin neu in Vuejs. –

+0

Sie greifen nicht über den Vue-Code auf mongodb zu. Sie senden AJAX/REST-Anfragen an Ihren Express-Server, der auf mongodv zugreift und das Ergebnis an den Client zurücksendet. Sie tun dies mit jeder gewünschten AJAX-Bibliothek. Ich benutze gerne Axios. Ein nettes Tutorium finden Sie hier: https://alligator.io/vuejs/rest-api-axios/ –

Antwort

1

VueJS ist ein Frontend-Framework.

Sie sollten definitiv nicht versuchen, mit DB direkt von Vue umzugehen.

Sie sollten Backend mit jeder gewünschten Sprache/Framework erstellen: NodeJS (wenn Sie bei JS bleiben wollen), ASP.NET (C#), Spring (Java) usw. und Ihr Backend sollte mit DB und Ihnen arbeiten sollte nur AJAX-Anfragen an Ihr Backend stellen und JSONs senden/zurückholen und JSONs am Frontend mit Vue behandeln.