web-dev-qa-db-ja.com

Firebase Storageにフォルダーを作成するにはどうすればよいですか?

したがって、新しいFirebaseは、Google Cloud Platformを使用したスト​​レージをサポートしています。

次のコマンドを使用して、imagesフォルダにファイルをアップロードできます。

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

コードを使用してサブフォルダーimages/user1234を動的に作成する場合はどうでしょうか。

公式の sample はその方法を示していません 公式ガイドリファレンスドキュメント も示していません。

フォルダを作成できる唯一の場所はFirebaseコンソールですか 手動

18
Pier

Firebaseコンソールでは、特定のフォルダにファイルを追加する最も簡単な方法であるため、フォルダを作成できます。

ただし、フォルダを作成するためのパブリックAPIはありません。代わりに、ファイルを追加するとフォルダーが自動作成されます。

13

Firebase Storage APIは中間製品として「フォルダ」を動的に作成します。_images/user1234/file.txt_でファイルを作成すると、「images」や「user1234」などのすべての中間「フォルダ」が途中で作成されます。したがって、コードは次のようになります。

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

child()呼び出しにはファイル名(_foo.txt_など)を含める必要があることに注意してください。参照にはファイル名だけでなく完全パスも含める必要があります。そうしないと、ファイルが呼び出されます。 images

25
Mike McDonald
String myFolder = "MyImages";
StorageReference riversRef = storageReference.child(myFolder).child("images/pic.jpg");
3
Tarun Umath

あなたは間違いなくディレクトリを作成できます。

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

2
JustDave

Firebase consoleでは、フォルダを作成できます。フォルダーを作成する別の方法はないと思います。

0
Suraj Upreti