我的'views'文件夹中有一个index.jade.
doctype html
html
head
title= title
link(rel='stylesheet', href='/stylesheets/main.css')
script(src='../node_modules/some_package/package_script.min.js')
Run Code Online (Sandbox Code Playgroud)
我在路由文件夹中有一个带路由器的index.js:
router.get('/', function(req, res) {
res.render('index', { title: 'title goes here' })
});
Run Code Online (Sandbox Code Playgroud)
当我尝试访问控制台中jade文件中的node_modules文件夹时,我一直收到404错误:
GET /node_modules/some_package/package_script.min.js 404 1ms - 19b
当我尝试访问node_modules中的脚本时,文件路径的确切工作方式/如何为Express修复它?我是否需要复制必要的javascript文件并将它们放在'public'下的'javascripts'文件夹下才能使用?
谢谢!
a_a*_*ias 17
哇!Hold on ... node_modules是一个私人目录,不应公开.默认情况下,该public目录是静态文件的公共根路径:
app.use(express.static(path.join(__dirname, 'public')));
Run Code Online (Sandbox Code Playgroud)
在那里有一个javascripts目录.将脚本复制到那里并将src模板中的属性更改为:
/javascripts/package_script.min.js
Run Code Online (Sandbox Code Playgroud)
如果您真的想要提供服务node_modules,这将是一个坏主意,请在app.use(express.static(...));上面的行下方添加以下内容:
app.use(express.static(path.join(__dirname, 'node_modules')));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10469 次 |
| 最近记录: |