doctype html
html
head
title= title
link(rel='stylesheet', href='/stylesheets/style.css')
script(src="/javascripts/jquery-2.1.1.js")
script(src="/javascripts/global.js")
body
block content
显然,
src="/../public/javascripts/jquery-2.1.1.js"
不起作用,但src="javascripts/jquery-2.1.1.js"
起作用文件结构如下:
nodetest
public
javascripts
jquery-2.1.1.js
views
index.jade
除非Jade实际上在公用文件夹中创建index.html?它是否正确?
最佳答案
第一个翡翠实际上并没有将index.html保存到磁盘,而是在请求响应周期中即时生成了它。
第二,默认情况下,将express设置为将public/
视为静态文件的根目录,因此您对/javascripts/jquery-2.1.1.js
的引用指向public/javascripts/jquery-2.1.1.js
如果您尝试加载/views/index.jade
或/index.jade
,则会显示404,因为Express无法找到任何匹配的静态文件
最后src="/javascripts/jquery-2.1.1.js"
(即斜线)可能是您引用的方式,因为否则它将根据您的url查找子文件夹。 (例如,如果您在js/jquery.js
页上有my.domain/parent/child.html
,则请求将转到my.domain/parent/js/jquery.js
关于html - Jade如何处理src属性?为什么/javascripts直接进入文件夹而不是/../public/javascripts?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23739688/