Node.js 如何在javascript函数中接收mongodb数组数据?
我需要使用GoogleMapsAPI推送,但是我需要传递lat和lng数据,这两个数据都是一个数字数组,下面我留下了我必须执行的代码 但是,我如何通过nodej将mongodb数据传递给下面的代码呢 它抱怨不能在javascript函数中以这种方式使用它。 我使用的是:NODEJS+MONGODB+EJS+googlemapsapiNode.js 如何在javascript函数中接收mongodb数组数据?,node.js,mongodb,Node.js,Mongodb,我需要使用GoogleMapsAPI推送,但是我需要传递lat和lng数据,这两个数据都是一个数字数组,下面我留下了我必须执行的代码 但是,我如何通过nodej将mongodb数据传递给下面的代码呢 它抱怨不能在javascript函数中以这种方式使用它。 我使用的是:NODEJS+MONGODB+EJS+googlemapsapi <!DOCTYPE html> <html lang="en"> <head> <meta charset="UT
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<style>
/* Always set the map height explicitly to define the size of the div
* element that contains the map. */
#map {
height: 100%;
}
/* Optional: Makes the sample page fill the window. */
html, body {
height: 100%;
margin: 0;
padding: 0;
}
#info {
position: absolute;
font-family: arial, sans-serif;
font-size: 18px;
font-weight: bold;
}
</style>
</head>
<body>
<div id="map"></div>
<div id="info">
</div>
<%= for(var i = 0; i < tasks.length; i++) { %>
<script>
var map;
var qtPolygon = 0;
var polygonComplete = false;
function initMap() {
map = new google.maps.Map(document.getElementById('map'), {
center: {
lat: -34.397,
lng: 150.644
},
zoom: 8
});
var drawingManager = new google.maps.drawing.DrawingManager({
drawingMode: google.maps.drawing.OverlayType.MARKER,
drawingControl: true,
drawingControlOptions: {
position: google.maps.ControlPosition.TOP_CENTER,
drawingModes: ['marker', 'polygon']
},
polygonOptions: {
editable: true,
clickable: true,
fillColor: "#0000FF",
fillOpacity: 0.5,
strokeColor: "#FF0000",
strokeOpacity: 1.0,
strokeWeight: 2
},
markerOptions: {
icon: 'https://developers.google.com/maps/documentation/javascript/examples/full/images/beachflag.png'
},
});
drawingManager.setMap(map);
var polygon = new google.maps.Polygon;
var points = new Array();
points.push({
lat: <%= tasks[i].coordenadasLat %>,
lng: <%= tasks[i].coordenadasLng %>
});
polygon[i].setPath(points);
polygon[i].setMap(map)
}
</script>
<% } %>
<script async defer src="https://maps.googleapis.com/maps/api/js?key=AIzaSyCRuw2dZRiWf45mKlCbmEz9XMlNrX45P4E&libraries=drawing&callback=initMap" type="text/javascript"></script>
</body>
</html>
LIBS
var mongoose = require('mongoose');
var db;
// CHAMADO QUANDO O {REQUIRE} É EXECUTADO
module.exports = function(){
// IF {Db} não conter um valor válido
// CRIA CONECÇÃO COM O BANCO DE DADOS {MONGODB}, COM O {SCHEMA crud_exer}
if(!db){
db = mongoose.connect('mongodb://localhost/db_mapbi');
}
return db;
}
var express = require('express');
var router = express.Router();
var model = require('./../model/tasks')(); // TRAZ O RETORNO, COM O MODEL PRONTO
/* GET home page. */
router.get('/', function(req, res, next) {
// BUSCA OS DADOS NO BANCO DE DADOS CRIADO
model.find(null, function(err, tasks){
if(err){
throw err;
}
res.render('index', {title: 'CRUD - EXERCICIO', tasks: tasks})
});
});
module.exports = router;
路线
var mongoose = require('mongoose');
var db;
// CHAMADO QUANDO O {REQUIRE} É EXECUTADO
module.exports = function(){
// IF {Db} não conter um valor válido
// CRIA CONECÇÃO COM O BANCO DE DADOS {MONGODB}, COM O {SCHEMA crud_exer}
if(!db){
db = mongoose.connect('mongodb://localhost/db_mapbi');
}
return db;
}
var express = require('express');
var router = express.Router();
var model = require('./../model/tasks')(); // TRAZ O RETORNO, COM O MODEL PRONTO
/* GET home page. */
router.get('/', function(req, res, next) {
// BUSCA OS DADOS NO BANCO DE DADOS CRIADO
model.find(null, function(err, tasks){
if(err){
throw err;
}
res.render('index', {title: 'CRUD - EXERCICIO', tasks: tasks})
});
});
module.exports = router;
型号
module.exports = function(){
var db = require('./../libs/connect_db')();
var Schema = require('mongoose').Schema;
var task = Schema({
nome: String,
coordenadasLat: Number,
coordenadasLng: Number
});
return db.model('tasks', task);
}
那么这与MongoDB有什么关系呢?我看不到任何指向这个方向的代码。。。?另外,请尽量更加具体,只发布相关的代码片段,而不仅仅是字面上的所有内容。@dnickless对不起,我发布了上面所有的代码。我们正在接近。)您收到的错误消息到底是什么?@Dnickless未找到“.coordinatesLat”和“.coordinatesLng”在哪里?在以
points.push开头的块中,这与MongoDB有什么关系?我看不到任何指向这个方向的代码。。。?另外,请尽量更加具体,只发布相关的代码片段,而不仅仅是字面上的所有内容。@dnickless对不起,我发布了上面所有的代码。我们正在接近。)您收到的错误消息到底是什么?@Dnickless未找到“.coordinatesLat”和“.coordinatesLng”在哪里?在以点开头的块中。按?