扫码关注官方订阅号
1,我直接将html文档返回到浏览器,但是html里面引用了一些本地文档,如外部style,外部js,图片之类的,这些全都访问不到,是否要针对这些单独写路由。
2,如何做到像模板引擎一样,往html文档里面填值。
以上两种都是在不用框架的情况下。先谢过各位了。
欢迎选择我的课程,让我们一起见证您的进步~~
不用框架的话,需要自己指定一个目录作为静态资源文件夹(根据访问地址到该目录找文件来响应),或者单独起一个站点作为静态资源站,但原理一样的,参考下:http://famanoder.com/bokes/58...
谢邀,
同意楼上的回答,不用框架你要自己写个静态资源的服务器了。
自己实现一个简易模版引擎,支持include的功能即可,也就是你nodejs生成html的时候解析你设计的html模版,然后替换占位符,替换完了,生成完整的html了,再发给浏览器
将html文档返回到浏览器,这一行为到底是怎样的? 你是指前端向服务器发出请求,然后由你这个基于nodejs的服务器向前端返回了一个html文档? 如果是这种情况的话,你只需要设置好返回的Header就行了,浏览器会自动解析这些资源。
将html文档返回到浏览器
html
Header
如何做到像模板引擎一样,往html文档里面填值 你弄一个模版引擎不就结了…………不想用现成的,反正不就是字符串拼接嘛……还能怎么搞……
如何做到像模板引擎一样,往html文档里面填值
我猜,应该是没有设置静态文件目录吧。举个栗子:
目录结构:
|-- public //静态文件目录,存放js,css文件 |-- app.js //nodejs服务器启动文件
app.js代码(以express为例)
//第一行是创建一个服务器,第二行是指定该服务器的静态文件目录 const app = express(); app.use(express.static(path.join(__dirname, 'public')));
需要一个路由
用 es6 的 string template.
example:
const render = (context, ...others) => { return ` <html> <body> <h1>{context.title}</h1> <p> { ` { if (context.condition) { <span>${context.something}</span> } else { <span>${context.somethingElse}</span> } } ` } </p> </body> </html> ` } res.send(render({title: 1, something: 1, ...rest}))
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
不用框架的话,需要自己指定一个目录作为静态资源文件夹(根据访问地址到该目录找文件来响应),或者单独起一个站点作为静态资源站,但原理一样的,参考下:http://famanoder.com/bokes/58...
谢邀,
同意楼上的回答,不用框架你要自己写个静态资源的服务器了。
自己实现一个简易模版引擎,支持include的功能即可,也就是你nodejs生成html的时候解析你设计的html模版,然后替换占位符,替换完了,生成完整的html了,再发给浏览器
将html文档返回到浏览器,这一行为到底是怎样的?你是指前端向服务器发出请求,然后由你这个基于nodejs的服务器向前端返回了一个
html文档?如果是这种情况的话,你只需要设置好返回的
Header就行了,浏览器会自动解析这些资源。如何做到像模板引擎一样,往html文档里面填值你弄一个模版引擎不就结了…………不想用现成的,反正不就是字符串拼接嘛……还能怎么搞……
我猜,应该是没有设置静态文件目录吧。举个栗子:
目录结构:
app.js代码(以express为例)
需要一个路由
用 es6 的 string template.
example: