Как создать папку в хранилище Firebase?

таким образом, новая Firebase поддерживает хранение с помощью облачной платформы Google.

вы можете загрузить файл в images папка с помощью:

var uploadTask = storageRef.child('images').put(file, metadata);

Что делать, если вы хотите создать подпапку images/user1234 динамически с помощью кода?

официальные пример не показывает, как это сделать, ни официальное руководство или справочные документы.

консоль Firebase единственное место, где могут быть папки создано вручную?

5 ответов


консоль Firebase позволяет создать папку, так как это самый простой способ добавить файлы в определенную папку.

но нет публичного API для создания папки. Вместо этого папки автоматически создаются при добавлении в них файлов.


Firebase Storage API динамически создает "папки" в качестве промежуточных продуктов: если вы создаете файл в images/user1234/file.txt, все промежуточные "папки", такие как" изображения "и" user1234", будут созданы по пути. Таким образом, ваш код становится:

var uploadTask = storageRef.child('images/user1234/file.txt').put(file, metadata);

обратите внимание, что вам нужно включить имя файла (foo.txt например) в child() вызов, так как ссылка должна включать полный путь, а также имя файла, в противном случае ваш файл будет называться images.


вы, безусловно, можете создавать каталоги... немного поиграв с рекомендациями, я сделал следующее.

test = (e,v) => {
    let fileName = "filename"
    let newDirectory = "someDir"
    let storage = firebase.storage().ref(`images/${newDirectory}/${fileName}`)

    let file = e.target.files[0]
    if(file !== undefined && file.type === "image/png" ) {
        storage.put(file)
            .then( d => console.log('you did it'))
            .catch( d => console.log("do something"))
    }
}

enter image description here


String myFolder = "MyImages";
StorageReference riversRef = storageReference.child(myFolder).child("images/pic.jpg");

консоль Firebase позволяет создать папку. Я не думаю, что есть другой способ создать папку.