Javascript 如何在Firebase存储中创建文件夹?
因此,新Firebase支持使用Google云平台进行存储 您可以使用以下方式将文件上载到Javascript 如何在Firebase存储中创建文件夹?,javascript,firebase,firebase-storage,firebase-console,Javascript,Firebase,Firebase Storage,Firebase Console,因此,新Firebase支持使用Google云平台进行存储 您可以使用以下方式将文件上载到图像文件夹: var uploadTask = storageRef.child('images').put(file, metadata); 如果要使用代码动态创建子文件夹images/user1234,该怎么办 官方没有说明如何做到这一点,or也没有说明 Firebase控制台是唯一可以创建文件夹的地方吗?Firebase控制台允许您创建文件夹,因为它是将文件添加到特定文件夹的最简单方法 但是没有用于
图像
文件夹:
var uploadTask = storageRef.child('images').put(file, metadata);
如果要使用代码动态创建子文件夹images/user1234
,该怎么办
官方没有说明如何做到这一点,or也没有说明
Firebase控制台是唯一可以创建文件夹的地方吗?Firebase控制台允许您创建文件夹,因为它是将文件添加到特定文件夹的最简单方法
但是没有用于创建文件夹的公共API。相反,文件夹是在您向其中添加文件时自动创建的。Firebase存储API动态创建“文件夹”作为中间产品:如果您在
images/user1234/file.txt
中创建文件,则所有中间“文件夹”如“images”和“user1234”都将随之创建。因此,您的代码变成:
var uploadTask = storageRef.child('images/user1234/file.txt').put(file, metadata);
请注意,您需要在
child()
调用中包括文件名(foo.txt
),因为引用应包括完整路径和文件名,否则您的文件将被称为images
,Firebase console允许您创建文件夹。我认为没有其他方法可以创建文件夹。您当然可以创建目录。。。通过一些参考资料,我做了以下工作
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"))
}
}
我们可以在存储控制台中上载文件夹吗?这会给我“\u filePath.includes不是一个函数”。。。知道为什么会这样吗?我传递给.child()的路径看起来是正确的(一定要打印到控制台上)。你知道Frank、Mike和我之间的答案实际上是一样的,只是说了不同的方式…你的答案没有使用.child(),而是将文件夹路径放在ref()而不是child中。在AngularFire中,它实际上按照我预期的方式工作。在Mike的例子中,我遇到了错误的父文件夹问题。也许是AngularFire语法的一个怪癖。选择总是好的。
String myFolder = "MyImages";
StorageReference riversRef = storageReference.child(myFolder).child("images/pic.jpg");