Html和Nodejs的代码如何分离?
发布于 12 年前 作者 jobiq 13236 次浏览 最后一次编辑是 8 年前

我从未学过web开发,因为兴趣爱好喜欢上了html5,现在从零开始学后台,有点JAVA和c的基础,但是后台就没有做过了,刚刚看完nodejs入门,发现里面的html代码都是用NodeJS代码生成的,感觉看起来好奇怪,请问一下大家,HTML和NODE是否可以分开写?如果可以分开写,大概的思路是怎样的?实在是很困惑,如果可以能否帖一个简单的html和node分开的代码?小弟感激不尽!!!

10 回复

这个。。。你说的分开是啥意思?JS是在服务器端的呀。

  • 如果是html模版的话,可以用ejs;
  • 如果是想直接放html文件的话,可以通过Express.js把html文件弄成静态的。

我的是说,html一个文件,node.js一个文件,html文件就负责客户端界面,node负责服务器端,不知道我说的是否明白…我太菜了,连问题都不知道怎么表达

现在通用的逻辑与界面分离的方法是用模板:用HTML编写模板,用node 传递数据渲染模板,楼主可以了解下。ejs 即是一个js模板系统(包含语法和渲染工具),可用在前端和后端。

谢谢楼上的两位,我先去研究一下…

express 这样的框架解决你的问题

你好,用express+ejs,req.render(index.html)时报错,TypeError: Object # has no method 'compile’ 有遇到这个问题的吗?网上有说是express版本的问题,可应该用哪个版本的,麻烦知道的话给个链接,多谢!

你好,用express+ejs,req.render(index.html)时报错,TypeError: Object # has no method 'compile’ 有遇到这个问题的吗?网上有说是express版本的问题,可应该用哪个版本的,麻烦知道的话给个链接,多谢!

@honglin1983 不会是版本的问题,因为即使什么版本也不会出现这么明显的bug,你看你程序写的有没有问题,ejs 里的标签是否都闭合了。

不清楚啊,其实没用过ejs。版本的话我觉着最新版应该就行吧

@honglin1983 用ejs的时候,文件必须是ejs的后缀。

回到顶部