【发布时间】:2020-02-03 12:21:22
【问题描述】:
我想在 Google Firebase 主机上托管一个网络应用,以及来自节点模块的 import 代码,但我找不到正确的方法。
我已将开发机器上的模块安装到 Firebase 安装的主目录中,并从我自己的 JS 文件中导入它们,但无论我尝试什么方式,都会收到错误消息。例如(ol 代表 OpenLayers):
import '../ol/ol.css';
import {Map, View} from '../ol';
import TileLayer from '../ol/layer/Tile';
import OSM from '../ol/source/OSM';
然后我得到这些错误:
加载模块脚本失败:服务器以“text/css”的非 JavaScript MIME 类型响应。
该错误消息中的 MIME 类型有时也是 "text/html"。
除了将package.json 和node_modules 放在正确的位置之外,还有更多的步骤吗?
我尝试过修补,但可能遗漏了一些明显的东西......
【问题讨论】:
-
不清楚您在这里要做什么。 Firebase 托管只提供静态内容。它不在后端托管节点应用程序或运行 JavaScript 代码。您可以为 Cloud Functions 编写代码并为其代理托管,但这与您在这里所做的完全不同。
-
好的,我正在使用 npm 安装我想在浏览器中运行的模块,我正在使用 FB 托管来提供带有这些模块的页面...
-
Firebase Hosting 的使用在这里并不重要,因为它只提供静态代码。它的工作方式与任何托管服务提供静态内容的方式相同。听起来您只是在构建静态内容时遇到了问题。
标签: node.js firebase npm openlayers firebase-hosting