1.不想在每个页面中放一份模板,这样有些太乱了,修改也麻烦.
- 模板存成3个文件, 每个页面使用 <script template="template1" src=".../template1.txt"> ,好像这样也是挺麻烦的,而且要发送三个http请求,如果模板数量有10个,这种方案好像也挺难接受的
有什么比较好的实现方式呢?
<script type="template1">
xxx
</script>
<script type="template2">
xxx2
</script>
<script type="template3">
xxx3
</script>
7 回复
@chapgaga 这个包只是在我们开发和测试时使用,真正上线时前端顶的是Nginx,系统会转而使用nginx的ssi。就include指令来说,connect-ssi和Nginx SSI是兼容的,其他指令未测试。 如果你将Express直接作为HTTP服务器暴露给浏览器,请注意务必使用.shtml作为ssi文件后缀,将它与纯静态html区分开,因为我发现connect-ssi这家伙对可能有ssi指令的文件只会响应200,不会响应304。当然如果前面还有Nginx,Nginx会根据文件是否被修改过而响应200或304.
@chapgaga 楼主的问题通过SSI include可以解决,
在你的HTML的模板区(通常在body最底部),可以这么定义:
<!--# include file="/templates/template_collection_a.html" -->
然后在/templates/template_collection_a中定义页面模板:
`