javascript - 当我上传文件后尝试读取事件目标时,事件目标返回为空

标签 javascript reactjs file

我正在构建一个简历 uploader 表单,我想在上传后显示上传的文件名称。我有一个onChange更改上传文件时的处理程序,但是当我尝试读取事件的属性时,特别是我读取信息的目标位置,它返回为 null。

这是我的文件输入 uploader :

        <input
          id="upload-resume"
          className="update-profile__upload"
          type="file"
          onChange={handleFileUpload}
        />

这是我的处理程序:

  const handleFileUpload = file => {
    console.log("This is the file");
    console.log(file);
  };

最佳答案

访问所有文件属性。

const [filesState, setFilesState] = React.useState([]);

return (
  <>
    <input
      type="file"
      name="file-upload"
      onChange={e => {
        setFilesState(e.target.files);
      }}
    />
    <br />
    {Array.from(filesState).map((file, index) => {
      return (
        <div key={index}>
          <p>Name: {file.name}</p>
          <p>Type: {file.type}</p>
          <p>Size: {Number(file.size / 1000).toFixed(2)} KB</p>
        </div>
      );
    })}
  </>
);

关于javascript - 当我上传文件后尝试读取事件目标时,事件目标返回为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60650511/

相关文章:

javascript - 如何捕获 react 钩子(Hook)表单验证错误

c++ - 清理你的#include 语句?

java - java中的文件重复

java.util.NoSuchElementException : No line found

javascript - AngularJS:需要在弹出标题中显示 "Expired"

javascript - JavaScript 数组如何具有非数字键?

javascript - 通过数字动画化 CSS 属性

javascript - 在 "Uncaught TypeError: _this.reduce is not a function"中使用 Lodash 和 create-react-app 结果

javascript - Spread 运算符动态属性更新

javascript - 从 jQuery 中的对象数组动态生成选择选项