代码之家  ›  专栏  ›  技术社区  ›  Curnelious

在函数/类之间传递参数

  •  3
  • Curnelious  · 技术社区  · 6 年前

    main.js :

    function readImage() {
        if (window.File && window.FileList && window.FileReader) {
            var files = event.target.files; //FileList object
    
            for (let i = 0; i < files.length; i++) {
                var file = files[i];
                if (!file.type.match('image')) continue;
    
            //* * * call function in storage class 
            uploadPhoto(file); 
    

    然后我启动了一个简单的新js文件,将上传功能转移到其中。

    在里面 storage.js

        function uploadPhoto(file)
        {
    
    
               // create ref for fireStorage etc
                var storageRef = firebase.storage().ref();
    
    // ...more code using firebase with error every time i use it
    

    错误:

    1. storage : uploadPhoto is defined but never used

    2. 每次使用时出错 firebase not defined ,如果我使用 在里面 (那么为什么不在storage.js内部呢?)

    html 两者的定义如下:

     //firebase is defined here...
     <script src="javascripts/main.js"></script>
     <script src="javascripts/storage.js"></script>
    

    storage.js 让它承认世界其他地方?

    1 回复  |  直到 6 年前
        1
  •  1
  •   NikxDa    6 年前

    为了避免在评论中进行长时间的讨论,我将通读所有已经说过的话,然后向你们解释它的意思。

    1. uploadPhoto is defined but never used . 这意味着你已经定义了 uploadPhoto 是的 从来没有人打过电话——这很好,因为你是 打电话进来 main.js . 你可以忽略这个错误。

    在代码运行之前检查代码的工具,如Linter。工具 而不是在浏览器中。

    1. 您提到的第二个错误是您可以使用 firebase main.js 文件,但不在另一个文件中。这不应该是事实,很可能是基于以下事实: 火基 尚未提供 当你试图在游戏中使用它时 storage.js 以及程序流如何执行。