next.js 云安全_url到useState

qnakjoqk  于 2024-01-07  发布在  其他
关注(0)|答案(1)|浏览(82)

在next.js客户端组件中,我使用了cloudinary的“CldmenadButton”。在“onSuccess”事件中,我试图循环上传结果,拾取图像“secure_url”,然后将所有图像的状态分配给它们。由于某种原因,我收到了一个空数组。如果有人有更好的主意,我会很高兴。谢谢。

export default function AddPost({ userId }) {
  const [images, setImages] = useState({});  

  return (
    <div>
      <form action={createPost} className="flex w-full">
        <input type="hidden" name="userId" defaultValue={userId} />
        <input type="text" name="title" placeholder="Title" />

        <textarea
          type="text"
          name="content"
          placeholder="Content"
          className="p-8"
        />

        <CldUploadButton
          uploadPreset="bkklcz9f"
          options={{
            sources: ["local"],
            multiple: true,
            maxFiles: 4,
          }}      
        
          onSuccess={(result) => {
            let arr = [];
            const imageCount = Object.keys(images).length;
            for (let i = 0; i < imageCount; i++) {
              const data = {
                imageUrl: result[i].secure_url,
              };
              arr.push(data);
            }
            setImages(arr);
            
          }}
        />

        <input type="hidden" name="imageUrl" defaultValue={images} />
        <input type="submit" value="Submit" />
      </form>
    </div>
  );
}

字符串

tpxzln5u

tpxzln5u1#

看看你的代码,我看到你在设置值之前就在迭代images.length,所以你的迭代的长度为零,应该是一个空数组。

相关问题