node 经验
- res.render('login.html') 的适用于:window.open()、 location.href='xx' , 也就是前端主动的想跳转的时候。 但是可以 res.statusCode = 302;res.setHeader('Location', '/'); return res.end(); 后端直接重定向,当客户端发现状态嘛是 302 后,自动去相应头去找 Location 并跳转
模板引擎获取动态数据 js: <%- user.name %> html:{{user.name}}
路径
// 当你使用如 res.render()时会默认加上前缀 path.join(__dirname, './htmls')
1. app.set('views', path.join(__dirname, './htmls'))
// static_res 里的文件谁都可以访问, 以 / 开头的话默认加上前缀 path.join(__dirname, './static_res')
2. app.use('/', express.static(path.join(__dirname, './static_res')))
1.
res.render('login.html') 的时候要看 1 , 它渲染的路径是 path.join(__dirname, './htmls')/login
场景: 在浏览器输入地址访问或者使用 location.href='/login' 时
浏览器会立即导航到新的URL /home。在这种情况下,你的Node.js服务器接收到请求后,执行 res.render('login.html'),
将渲染后的HTML作为响应发送给浏览器,浏览器会显示这个新页面
2.
在项目目录下(静态文件或非静态都可以)加载其它的文件要看 2, 比如 <script src="/js/public/jquery.min.js"></script>
实际是 path.join(__dirname, './static_res')/js/public/jquery.min.js
3.
模板引擎 {{extend './public/base.html'}} 要使用相对路径和 1,2 无关
本文来自博客园,作者:封兴旺,转载请注明原文链接:https://www.cnblogs.com/fxw1/p/17935226.html