繁体   English   中英

JSRender内联模板

[英]JSRender inline templates

使用JSRender可以使用类型为“ text / x-jsrender”的脚本标签创建模板。 例如

<script id="movieTemplate" type="text/x-jsrender">
        <li>
            {{>name}} {{>releaseYear}}
        </li>
</script>

然后可以将其呈现如下:

<script type="text/javascript">
        $("#movieList").html(
            $("#movieTemplate").render(movies)
        );
</script>

但是对于简单的模板,我宁愿以内联方式声明它们,而不是在单独的“ text / x-jsrender”脚本标记中声明。 这可能吗? 我在考虑以下方面:

   var myTemplate = "<li>{{>name}} {{>releaseYear}}</li>";
   var outputHtml = render(myTemplate, movies);

您可以使用$.templates()进行此操作。 关闭,您只缺少一行:

var myTemplateText = "<li>{{>name}} {{>releaseYear}}</li>";
var myTemplate = $.templates(myTemplateText);
var outputHtml = myTemplate.render(movies);

值得注意的是,模板的优点之一是您可以将演示文稿与代码分开。 这意味着如果我是设计师,则可以轻松理解您的模板HTML,而无需了解JavaScript逻辑。 当您按照我上面的方法进行操作时,由于混合了演示文稿和逻辑,您将失去这种能力。 是否可以接受,取决于您自己。

无论如何,在JSRender网站上都有一些很好的示例,介绍了不同的方法来创建模板。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM