我试图将图像上传到 firebase 但代码似乎不起作用

Im trying to upload a image to firebase but the code does not seem to work

我正在尝试将图像上传到 fire base,我知道我无法按原样上传图像,所以我做了一些事情来拍摄图像并进行转换,但它无法正确转换为 base64 字符串,而且我一直收到错误消息"fileReader is not a function"

函数如下:

function encode(){
        var file = document.getElementById("inputFileToLoad").files; //get the file
        if (file.length > 0)
        {
            var fileToLoad = file[0];

            var fileReader = new fileReader();

            fileReader.onload = function(loadFileEvent) {
                var srcData = loadFileEvent.target.result; // <--- data: base64

                //connect to firebase and set it
                var uploadEncodedImg = new Firebase("https://image-uploads.firebaseio.com/");
                uploadEncodedImg.set({
                  img: srcData,
                });
                console.log("uploaded to Firebase");

                //get the image on firebase and load it off the server
                uploadEncodedImg.child('img').on("value", function(snapshot) {
                  console.log(snapshot.val());
                  document.getElementById("Encoded").src = snapshot.val();
                });
            }
            fileReader.readAsDataURL(fileToLoad);
        }
    }

你的代码似乎是正确的,只有一件事,当你调用一个新的 fileReader 实例时,单词的开头应该是一个大写..

var fileReader = new fileReader(); 

应该是

var fileReader = new FileReader();

应该可以解决问题(检查函数新实例的拼写和大小写)