使用“firebase serve”运行Firebase应用程序时如何访问通过NPM安装的库?

时间:2017-09-13 20:59:23

标签: firebase npm

这是我的 index.html

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>Welcome to Firebase Hosting</title>

    <link type="text/css" href="node_modules/material-components-web/dist/material-components-web.css">
    <script defer src="/__/firebase/4.3.1/firebase-app.js"></script>
    <script defer src="/__/firebase/4.3.1/firebase-auth.js"></script>
    <script defer src="/__/firebase/4.3.1/firebase-database.js"></script>
    <script defer src="/__/firebase/4.3.1/firebase-messaging.js"></script>
    <script defer src="/__/firebase/4.3.1/firebase-storage.js"></script>
    <script defer src="/__/firebase/init.js"></script>
    <script defer src="scripts/app.js" charset="utf-8"></script>
  </head>
  <body>
    ...Something...
    <script src="node_modules/material-components-web/dist/material-components-web.js"></script>
    <script>mdc.autoInit()</script>
  </body>
</html>

第7行中的样式表或<body>内的脚本都未加载。

我的项目结构如下。我只包括相关的文件和目录。 public firebase.json 中设置的公共目录。我不想将我的所有项目都保存在项目根目录中。

Project
|-node_modules
|-public
| |-index.html
| |-...
|
|-firebase.json
|-...

我的 firebase.json 文件:

{
  "database": {
    "rules": "database.rules.json"
  },
  "hosting": {
    "public": "public",
    "ignore": [
      "firebase.json",
      "**/.*"
    ]
  }
}

1 个答案:

答案 0 :(得分:0)

Firebase托管不包括任何服务器端安装或包管理。因此,您需要在部署期间将依赖项作为静态资产的一部分上载。

在本地,您可能希望将它们放在公共文件夹(已部署的内容)中,或使用Gulp / Grunt任务将其复制到那里。