【问题标题】:expressjs - serving vendors folder on localhost but not on heroku/otherhostexpressjs - 在本地主机上提供供应商文件夹,但不在 heroku/otherhost 上
【发布时间】:2018-09-05 20:01:42
【问题描述】:

我正在使用 expressjs 和车把来提供网页服务。我所有的 javascript 都在 public/javascripts 文件夹中,我的样式表在 public/stylesheets 中。

从那里加载 .css 或 .js 文件是可行的。但现在我有一个文件夹 public/vendors/bower_components/ 里面有子文件夹。

在本地主机上,它会从供应商文件夹中加载项目,但当我向公众提供页面或将其提交给 Heroku 时不会。

这是我的静态文件夹:

app.use(express.static(path.join(__dirname, 'public')));

这就是我包含 JS/css 的方式:

<script src="vendors/bower_components/jquery-toast-plugin/dist/jquery.toast.min.js"></script>
<link href="vendors/bower_components/jquery-toast-plugin/dist/jquery.toast.min.css" rel="stylesheet" type="text/css">

我已经尝试向供应商添加正斜杠,但仍然无法提供服务。文件夹结构:

05/09/2018  13:22                   .
05/09/2018  13:22                   ..
03/09/2018  08:27                   fonts
03/09/2018  08:27                   img
05/09/2018  13:22                   javascripts
03/09/2018  16:40                   lib
05/09/2018  09:49                   stylesheets
05/09/2018  09:45                   vendors
    05/09/2018  09:46                   bower_components
        05/09/2018  09:46                   jquery-toast-plugin
            05/09/2018  09:46                   dist
                06/09/2016  14:49                   jquery.toast.min.css
                06/09/2016  14:49                   jquery.toast.min.js

非常感谢任何帮助!

【问题讨论】:

    标签: node.js express


    【解决方案1】:

    git 是否跟踪供应商或 bower_components 目录? 如果不是,heroku 在部署期间是否运行任何构建脚本?此脚本包含 bower install 命令?

    【讨论】:

    • 我很惭愧地说这是问题所在。我正在使用来自 gitignore.io 的 Node.js gitignore,但我并没有想到要先检查它。谢谢!
    猜你喜欢
    • 1970-01-01
    • 2017-01-14
    • 2020-11-23
    • 2014-01-26
    • 2013-01-13
    • 1970-01-01
    • 2018-03-11
    • 2016-12-30
    • 2016-09-21
    相关资源
    最近更新 更多