1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > 使用node.js + express开发web应用笔记(3) - 模板页与局部视图

使用node.js + express开发web应用笔记(3) - 模板页与局部视图

时间:2018-10-25 12:59:42

相关推荐

使用node.js + express开发web应用笔记(3) - 模板页与局部视图

Vash 相对于jshtml提供了更好的文档,而且它的使用非常类似于 MVC Razor引擎. 这是我选择它的原因

模板页(Master Page)和局部视图(Partial View) 是Razor引擎中非常重要的特性。

首先新建/views/layout.vash模板页

<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><title>@model.title</title>@html.block('header_plus')</head><body>@html.block('content')</body></html>

@html.block定义了两个占位符,允许view对它进行内容填充

修改index.vash, 使用此模板页

@html.extend('layout', function(model){@html.block('header_plus', function(model){<script type="text/javascript" src="XXXX"></script>})@html.block('content', function(model){<h1>the content is from page whose title is &quot;@model.title &quot;</h1>})})

此时访问页面将会看到 view的HTML已经合并到了 模板页中

接下来,创建一个局部视图/views/widget.vash

<p>I am from partial view @model.title</p>

现在可以使用@html.include引入此局部视图到viewu或者模板页中, 如index.vash

@html.extend('layout', function(model){@html.block('header_plus', function(model){<script type="text/javascript" src=""></script>})@html.block('content', function(model){<h1 class="name">the content is from page whose title is "@model.title "</h1>@html.include('widget', model)@html.include('widget', model)})})

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。