我希望在assets
文件夹下有一个functions
文件夹(也许它也有一些子文件夹),其中包含多个图像文件。我根据数据库操作将assets
文件夹(或其中一个子文件夹)的部分或全部内容复制到使用该特定db
操作指定的Firebase存储位置。 (或在temp
文件夹下进行编辑,然后再将其发送到云存储位置)
这可能吗?我无法找到任何相关信息。
我知道我可以将这些资产置于Firebase存储之下,我只想将它们保留在functions
下,以保持我的项目结构清洁。此外,存储的云功能区域中的任何操作都是按文件进行的,没有批量文件夹操作。
更新
确实有可能,在使用自定义子文件夹时,需要在云函数中使用正确的文件/文件夹位置。我将在空闲时间之后写下答案。
答案 0 :(得分:1)
我尝试了上述解决方案,但失败了
您可以将文件转换为base64,然后将其转换为函数的顶部,可以将bas64文件转换为文件,并将其保存在os.tmpdir()
中,然后在函数的任何位置使用它。
以下是我如何将字体放入云函数中以供以后使用的示例
function writeFontsInTempDir() {
const banglaFont = 'Your base64'
fs.writeFileSync(path.join(os.tmpdir(), 'bangla_font.ttf'), banglaFont, {encoding: 'base64'});
const englishFont= 'Your base64'
fs.writeFileSync(path.join(os.tmpdir(), 'english_font.ttf'), englishFont, {encoding: 'base64'});
}
为了以后使用,您可以致电
const bangla_font_path = path.join(os.tmpdir(), 'bangla_font.ttf');
const english_font_path = path.join(os.tmpdir(), 'english_font.ttf');
您将需要这些进口
import * as os from 'os';
import * as path from 'path';