javascript - 检查 typescript 中是否存在图像

标签 javascript jquery typescript angular

我有一个谷歌地图实现,我在其中使用位于在线位置的 map 图 block 。但是,如果我走到图 block 区域之外,它会抛出错误,因为它找不到该图像。当它们不存在时,我如何制作一个 if 语句来返回 null?

我考虑的是这个,因为我包含了 jquery:

$.get(url)
.done(function() { 
  // exists code
  return `http://www.blablabla.com/grey-tiles/${zoom}/${coord.x}/${coord.y}.png`
}).fail(function() { 
    // not exists code
   return null;
})

但这对我不起作用这是我组件的构造函数:

 constructor(){
this.imageMapOptions = {
  getTileUrl: (coord: ImageMapTypeCoord, zoom: number) => {
     return `http://www.blablabla.com/grey-tiles/${zoom}/${coord.x}/${coord.y}.png`
  },
   tileSize: { height: 256, width: 256 },
   maxZoom: 18,
   minZoom: 16,
   radius: 1738000,
   name: 'Beeksebergen'
 };    
}

最佳答案

这样的事情可能会起作用:

var url = 'https://example.com/image.png';
return new Promise((resolve, reject) => {
  return $('<img>')
    .on('error', reject.bind(null, url))
    .on("load", resolve.bind(null, url))
    .appendTo(document.body)
    .css({ "position": "absolute", top: -9999, left: -9999 })
    .on("error load", $.fn.remove)
    .attr("src", url);
});

关于javascript - 检查 typescript 中是否存在图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37703032/

相关文章:

javascript - 将 AngularJS 转换为 Angular 6

javascript - 如何解析 json 并根据值在 HTML 表中显示不同的颜色?

jquery - 为什么 jReject 不能正常工作?

jquery - 如果数据库中的值为模态形式的 1,如何检查复选框

javascript - 创建一个使用 React Native 的函数 'title case'

javascript - Leaflet:如何通过聚类从不同图层的下拉菜单中选择标记

javascript - 我正在尝试动态更改 div 元素的大小

javascript - 在不丢失选择的情况下使用 JavaScript 更改选择中的选项

node.js - Angular 6 错误类型错误 : Cannot read property 'navigate' of undefined

angular - 绑定(bind)文本区域中的值