加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc – 预编译Hogan.js模板服务器端ASP.NET MVC

发布时间:2020-12-16 09:38:15 所属栏目:asp.Net 来源:网络整理
导读:我正在通过推特浏览Hogan.js. http://twitter.github.com/hogan.js/ 他们谈论能够通过服务器预编译模板,我理解这可能是一个优势. 目前每次渲染模板时,我都会在AJAX命中服务器后执行以下操作来获取数据: var template = Hogan.compile($('#seasonsTmpl').htm
我正在通过推特浏览Hogan.js.

http://twitter.github.com/hogan.js/

他们谈论能够通过服务器预编译模板,我理解这可能是一个优势.

目前每次渲染模板时,我都会在AJAX命中服务器后执行以下操作来获取数据:

var template = Hogan.compile($('#seasonsTmpl').html());
     $('#main').html(template.render(data));

给出以下模板:

<script type="text/html" id="seasonsTmpl">

     <ul>
    {{#season}}
        <li>{{.}}</li>
    {{/season}}
    </ul>

</script>

如何使用ASP.MVC后端“预编译”服务器端?这是不可能的,因为它似乎集中在使用Node.js?

解决方法

您有正确的想法来优化模板.有两个选项,选择可能取决于您是要在客户端还是服务器端呈现模板.

如果要在客户端呈现它们,可以使用Hogan.js进行真正的预编译.是的,这不能在.NET上运行,但我认为您在可能的情况下进行预编译时会误解.您可以在构建过程中预先编译模板,而不是期望它发生在每个Web请求或页面加载上.您需要安装node和npm来进行设置,但是您只需要在自己的机器上本地运行它,或者如果您使用它,则需要在构建盒中运行.每当更新模板时,都会再次运行Hogan来更新输出文件.编译后的输出将是一个JavaScript文件,其中包含针对以后使用而优化的函数.这些函数包括模板字符串,以及将数据呈现为Mustache的逻辑.然后,您可以像其他任何JavaScript包含一样包含输出文件,或者如果您这样做,可以将其与其他来源一起包括在内.

第二个选项是在服务器端呈现模板.这与预编译不同,服务器将为每个Web请求再次编译和呈现模板.离开Hogan.js,看看像Nustache这样的.NET替代品.关于Mustache的好处是它有一个规范,并已被移植到几种服务器端语言.

在渲染发生的位置方面,这些选项存在根本区别.您甚至可能希望在某些情况下使用这两种方法,例如,如果您想使用Nustache渲染初始页面加载服务器端,但是必须使用通过Hogan预编译的模板在浏览器中呈现动态元素.

更多信息:
Nustache on Github

我希望你觉得这有用!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读