首页 > 解决方案 > 使用最新版本的函数模拟 Firebase 函数

问题描述

我目前正在本地使用 Firebase 模拟器开发 Firebase 功能。

每次我更改函数中的逻辑时,我都想简单地运行

firebase emulators:start

但似乎永远不会包含最新的更改,除非我首先使用

firebase deploy --only functions

这会导致不必要的未完成代码部署,并在每次迭代测试之间增加大量时间。

有什么方法可以确保在仅运行模拟器而不运行部署时包含最新版本的功能?我一直在搜索文档,找不到任何指向正确方向的东西。

标签: google-cloud-functionsfirebase-tools

解决方案


因此,在窥探了一下之后,似乎我用 Typescript 编写的函数在仅启动模拟器时并未编译为 javascript。中的 javascriptfunctions/lib/**.js已运行,但由于未编译 Typescript,它将始终运行以前的版本。

这似乎是 Firebase 方面的一个错误。当使用 Firebase-cli 创建一个 firebase 文件夹并从根目录运行模拟器时,自然的期望是编译 Typescript。

我已向 Google Firebase 发送了错误票证并将关闭此问题。一种解决方法是创建一个tscfirebase emulators:start.


推荐阅读