Javascript 如何在传单地图上添加更多标记

Javascript 如何在传单地图上添加更多标记,javascript,jquery,laravel,leaflet,maps,Javascript,Jquery,Laravel,Leaflet,Maps,我想添加一个地址数组并将其转换为坐标,为每个地址创建标记并将其添加到地图中,尝试迭代循环,但它不起作用,你能帮我吗?代码如下: var map = L.map('map').setView([17.0812861,-96.805772], 13); L.tileLayer('http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', { attribution: '&copy; <a href="https://www.open

我想添加一个地址数组并将其转换为坐标,为每个地址创建标记并将其添加到地图中,尝试迭代循环,但它不起作用,你能帮我吗?代码如下:

var map = L.map('map').setView([17.0812861,-96.805772], 13);

L.tileLayer('http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {
    attribution: '&copy; <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a>',
    subdomains: ['a', 'b', 'c']
}).addTo(map);

var planes = [
    ["Prolongación de Xicoténcatl, 68120 Oaxaca de Juárez, MX"],
    ["Av Belisario Domínguez 428, 68050 Oaxaca de Juárez, MX"],
    ["C820B6"]
];
for (var i = 0; i < planes.length; i++) {

    planes[i]=provider.search({
        query: planes[i]
    });
}

for (i = 0; i < value.length; i++) {
    query.then(value => {
        for (i = 0; i < value.length; i++) {
            // Success!
            var x_coor = value[i].x;
            var y_coor = value[i].y;
            var label = value[i].label;
            var marker = L.marker([y_coor, x_coor]).addTo(map).on('click', markerOnClick); 
            marker.bindPopup("<b>Found location</b><br>" + label).openPopup(); // note the "openPopup()" method. It only works on the marker
        };
    }, reason => {
        console.log(reason); // Error!
    });
}
var-map=L.map('map').setView([17.0812861,-96.805772],13);
L.tileLayer('http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png'{
属性:“©;”,
子域:['a','b','c']
}).addTo(地图);
变量平面=[
[“墨西哥华雷斯瓦哈卡68120号,西科特涅加特延长期”],
[“Av Belisario Domínguez 428、68050瓦哈卡-华雷斯,墨西哥”],
[“C820B6”]
];
对于(变量i=0;i{
对于(i=0;i”+标签).openPopup();//注意“openPopup()”方法。它只对标记有效
};
},原因=>{
console.log(原因);//错误!
});
}
这个脚本使用一个标记:

var map = L.map('map').setView([17.0812861,-96.805772], 13);

L.tileLayer('http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {
    attribution: '&copy; <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a>',
    subdomains: ['a', 'b', 'c']
}).addTo(map);

var query_addr = "Prolongación de Xicoténcatl 1031, 68120 , MX";

const provider = new window.GeoSearch.OpenStreetMapProvider();
var query_promise = provider.search({
    query: query_addr
});


query_promise.then(value => {
    for (i = 0; i < value.length; i++) {
        // Success!
        var x_coor = value[i].x;
        var y_coor = value[i].y;
        var label = value[i].label;
        var marker = L.marker([y_coor, x_coor]).addTo(map) 
        marker.bindPopup("<b>Found location</b><br>" + label).openPopup();     };
    }, reason => {
        console.log(reason); 
    }
);
var-map=L.map('map').setView([17.0812861,-96.805772],13);
L.tileLayer('http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png'{
属性:“©;”,
子域:['a','b','c']
}).addTo(地图);
var query_addr=“延长西科大学的教学时间1031、68120、MX”;
const provider=new window.GeoSearch.openstreetmaprovider();
var query\u promise=provider.search({
查询:查询地址
});
查询承诺。然后(值=>{
对于(i=0;i”+标签).openPopup();};
},原因=>{
控制台日志(原因);
}
);

我是JS和Laravel方面的新手,编程方面的新手,我非常喜欢学习。如果您能支持我,我将非常感激,我觉得它很有趣,jaavscript

如果您还不能找到解决方案,我和您有同样的问题。只需将
const提供程序
更改为
var提供程序

所以它会导致这样的结果:

var map = L.map('map').setView([17.0812861,-96.805772], 13);

L.tileLayer('http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {
    attribution: '&copy; <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a>',
    subdomains: ['a', 'b', 'c']
}).addTo(map);

var query_addr = "Prolongación de Xicoténcatl 1031, 68120 , MX";

var provider = new window.GeoSearch.OpenStreetMapProvider();
var query_promise = provider.search({
    query: query_addr
});


query_promise.then(value => {
    for (i = 0; i < value.length; i++) {
        // Success!
        var x_coor = value[i].x;
        var y_coor = value[i].y;
        var label = value[i].label;
        var marker = L.marker([y_coor, x_coor]).addTo(map) 
        marker.bindPopup("<b>Found location</b><br>" + label).openPopup();     };
    }, reason => {
        console.log(reason); 
    }
);
var-map=L.map('map').setView([17.0812861,-96.805772],13);
L.tileLayer('http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png'{
属性:“©;”,
子域:['a','b','c']
}).addTo(地图);
var query_addr=“延长西科大学的教学时间1031、68120、MX”;
var provider=new window.GeoSearch.openstreetmaprovider();
var query\u promise=provider.search({
查询:查询地址
});
查询承诺。然后(值=>{
对于(i=0;i”+标签).openPopup();};
},原因=>{
控制台日志(原因);
}
);

我认为这只是在嵌套循环中重用变量名
I
的问题;使用
i
,然后使用
j
。参见例如,在i和j的故事之前,值和查询变量从何而来?