gpt4 book ai didi

javascript - 如何传递内联 JSON 而不是 URL 路径

转载 作者:行者123 更新时间:2023-11-28 06:59:29 26 4
gpt4 key购买 nike

您能看一下This Demo吗?让我知道如何传递 Javascript 对象,例如

var projects = [
{ "ProjectID":"15260", "Longitude":"-118.641508", "Latitude":"51.949915" },
{ "ProjectID":"17043", "Longitude":"-125.444557", "Latitude":"51.097552"},
.....
{ "ProjectID":"17088", "Longitude":"-124.160699", "Latitude":"50.897618" }
];

而不是

中的 URL
var photos = esriRequest({
url: "data/1000-photos.json",
handleAs: "json"
});
photos.then(addClusters, error);
});

正如您所看到的,esriRequest() 正在处理来自服务器的 JSON 文件 (data/1000-photos.json),但在我的例子中,我有一个 jQuery Ajax 调用,它返回相同的数据.done() 并且我不想将它们保存在 saerver 上。

我已经尝试删除 esriRequest() 并将 addClusters() 直接加载到 map 中,就像

map.on("load", addClusters);

function addClusters() {
var photoInfo = {};
var wgs = new SpatialReference({
"wkid": 4326
});
photoInfo.data = arrayUtils.map(function() {
for (var i = 0; i < projects.length; i++) {
var latlng = new Point(parseFloat(projects.lng), parseFloat(projects.lat), wgs);
var webMercator = webMercatorUtils.geographicToWebMercator(latlng);
var attributes = {
"Caption": p.caption,
"Name": p.full_name,
"Image": p.image,
"Link": p.link
};
return {
"x": webMercator.x,
"y": webMercator.y,
"attributes": attributes
};
}
});

但是photoInfo.data仍然是空的!

最佳答案

 photoInfo.data = arrayUtils.map(function() {
for (var i = 0; i < projects.length; i++) {
var latlng = new Point(parseFloat(projects.lng), parseFloat(projects.lat), wgs);

我在这里看到几个问题:

  • 您正在调用 map(它接受一个数组和一个函数),但仅传递一个参数。
  • map 中有一个 for 循环。这没有任何意义。
  • 您访问的是 projects.lng(整个数组),而不是 projects[i].lng(当前元素)。
  • 您的对象没有 lnglat 属性(或 captionfull_name图像链接)。

尝试这样的事情:

photoInfo.data = arrayUtils.map(projects, function(p) {
var latlng = new Point(parseFloat(p.Longitude), parseFloat(p.Latitude), wgs);
var webMercator = webMercatorUtils.geographicToWebMercator(latlng);
var attributes = {
"Caption": "Project ID: " + p.ProjectID
};
return {
"x": webMercator.x,
"y": webMercator.y,
"attributes": attributes
};
});

关于javascript - 如何传递内联 JSON 而不是 URL 路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32288946/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com