javascript - 为什么这个属性不在 Object.assign 中合并?
问题描述
所以我有这样的功能:
const photosWithTempId = files.map(file => {
const tempId = generateTempId(file);
console.log("tempId: ", tempId);
return Object.assign(file, {
["id"]: tempId,
["filename"]: file.name,
["downloadUrl"]: file.preview,
});
});
它应该在两个附加字段旁边添加一个时间 IDfilename
和downloadUrl
问题是返回的File object
没有id
属性,但它确实有新的filename
和downloadUrl
属性:
File {
name: "pipboy.gif"
lastModified: 1588020743900
lastModifiedDate: Mon Apr 27 2020 23:52:23 GMT+0300 (Eastern European Summer Time) {}
webkitRelativePath: ""
size: 30265
type: "image/gif"
preview: "blob:http://localhost:3000/f0cafa2b-82a1-4652-bbaa-234c4fc1b8b6"
index: 0
progress: 0
uploadState: "NOT_STARTED"
fieldsToPost: {filename: "pipboy.gif", originalFilename: "pipboy.gif"}
filename: "pipboy.gif"
downloadUrl: "blob:http://localhost:3000/f0cafa2b-82a1-4652-bbaa-234c4fc1b8b6"
}
generateTempId(file)
是一个返回随机生成的字符串 id 的函数,例如tempId_50481707
export const generateTempId = file =>
!file["id"]
? TEMP_ID + Math.floor(Math.random() * RANDOM_TEMP_NUMBER)
: file["id"];
最终对象应该具有该属性id: tempId_50481707
,但它没有。
解决方案
推荐阅读
- c# - 如何从 Map.GetExtent() 获取真实坐标(lat lng)
- laravel - 我想查看在 Carbon::now 同月创建的帖子
- mysql - 用于从表中删除所有内容的 SQL 查询,仅保留所需的行
- scala - 无法在 spark scala maven 中解析符号 apache
- c# - mediaCapture.InitializeAsync 中的“没有可用的捕获设备”
- javascript - 如何在 React 中制作可编辑的卡片?
- java - 如何使用 Heroku & Maven 和 GitHub 托管我的 Telegram Bot [JAVA]?
- react-redux - 在ofType之后如何进一步检查动作类型?
- docker - 是否可以创建父子 Dockerfile 并覆盖 ENTRYPOINT?
- python - 考虑数量的市场篮子分析