javascript - 在脚本中添加图像路径以从 json 文件中获取图像
问题描述
背景:
我需要从下面的 json 文件的路径中获取图像:
{
"path" : " shape\/",
"info" : {
"author" : ""
},
"name" : "shape",
"layers" : [
{
"height" : 612,
"layers" : [
{
"name" : "bg_rectangle_1"
},
{
"height" : 475,
"layers" : [
{
"src" : "http://sitename.com/images/oneheart.png",
"name" : "mask_image_1"
},
{
"name" : "useradd_ellipse1"
}
],
"name" : "user_image_1"
}
],
"name" : "loveshape_17"
}
]
}
我用下面的代码成功地做到了:
var maskedImageUrla = "";
$.getJSON('test.json', function(json) {
for (let layer of json.layers) {
if (layer.layers && layer.layers.length > 0) {
for (let temp of layer.layers) {
if (temp.src) maskedImageUrla = temp.src;
else if (temp.layers) {
for (let tl of temp.layers)
if (tl.src) maskedImageUrla = tl.src;
}
}
}
}
要求:
在上面的 json 文件中,如果 src 是这样的:"src" : "oneheart.png"
[而不是完整路径],那么如何获取图像?因为此路径中存在图像:http://sitename.com/images/oneheart.png
解决方案
你可以改变这个
if (tl.src) maskedImageUrla = tl.src;
对此
if(tl.src.includes('/')){
maskedImageUrla = tl.src
} else {
maskedImageUrla = `http://sitename.com/images/${tl.src}`
}
推荐阅读
- java - Java 8 流字符串操作和比较
- java - Spring cloud gateway 2.5 with eureka return 404
- react-native - expo 应用程序在网络上异常冻结,没有错误消息
- reactjs - 如何使用 VSC 在现有的 react 项目上安装 react 但安装了新的操作系统?
- scala - apache/spark/scala - 如何在流式传输时为每个上传的文件编写具有当前时间戳的文件?
- python - 如果连接“with”和“cur”在另一个不同的py文件中,如何调用cursor.execute?
- python - 使用分类器列过滤熊猫中的数据框
- angular - Angular 8 中的 ngx-useful-swiper 设置会出错
- python - 3D 卷积神经网络中的输入输出形状
- java - 配置 SignalFx 以在 Kafka 中为生产者/消费者获取相同的 traceid