Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 如何在javascript函数中接收mongodb数组数据?_Node.js_Mongodb - Fatal编程技术网

Node.js 如何在javascript函数中接收mongodb数组数据?

Node.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

我需要使用GoogleMapsAPI推送,但是我需要传递lat和lng数据,这两个数据都是一个数字数组,下面我留下了我必须执行的代码

但是,我如何通过nodej将mongodb数据传递给下面的代码呢

它抱怨不能在javascript函数中以这种方式使用它。 我使用的是:NODEJS+MONGODB+EJS+googlemapsapi

<!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”在哪里?在以
点开头的块中。按