我是Node JS的新手,所以我可能做得完全错了!
我已经创建了一个上传表单来上传图像。我已经让它工作了,图像正在上传到公共文件夹中的一个文件夹中。
我的下一步是获取图像的宽度和高度。我已经使用了图像大小的模块,并设法获得了宽度和高度。
我想将宽度和高度添加到我创建的对象中,但是我似乎不知道如何将这些值添加到对象中。然后使用该对象将有关图像的数据添加到数据库中。
uploadImages(req, res, (err) => {
if (err) {
console.log("Error:", err.message)
} else {
const imagesArray = req.files.map((image) => {
let imageObject = {}
imageObject.type = image.mimeType
imageObject.path = image.path
imageObject.link = image.path.replace("public", "").replace(/\\/g, "/")
imageObject.timeUploaded = Date.now()
sizeOf("public/" + imageObject.link, (err, sizes) => {
if(err) {
error(err)
} else {
success(sizes)
}
})
const error = (err) => {
console.log(err)
}
const success = (data) => {
imageObject.width = data.width
imageObject.height = data.height
console.log(imageObject)
}
return imageObject
})
db.collection("uploadtest2").insertMany(imagesArray, (err, result) => {
if (err) {
return console.log(err)
}
// db.collection("resized-images").insertMany()
console.log("something saved to the database")
})
}
})
res.redirect("/")
})```发布于 2019-06-23 20:02:20
试试js小提琴
https://jsfiddle.net/dupinderdhiman/wy7omr6k/5/
var img = document.getElementById('img');
//or however you get a handle to the IMG
var width = img.clientWidth;
var height = img.clientHeight;
alert('height: '+height+' Width:'+width);<img id="img" src="https://media.licdn.com/dms/image/C4D0BAQHiNSL4Or29cg/company-logo_200_200/0?e=2159024400&v=beta&t=0e00tehBFFtuqgUCfAijpOkoBl89jxOTIe_k9HHpi_4" />
https://stackoverflow.com/questions/56723592
复制相似问题