JavaScript中的{% .... %}语法是什么意思?
巴扎黑
巴扎黑 2017-04-10 15:08:31
0
6
1279

下载了一个开源项目jquery file upload。看到js代码有如下语法:

        {% if (file.error) { %}
            <td>1</td>
        {% } else { %}
            <td >2</td> 
        {% } %}

请问这种语法是什么含义?如何工作?

补充:代码在.net mvc的一个视图(cshtml)中,我理解应该不是服务器端标记语言。

巴扎黑
巴扎黑

reply all(6)
PHPzhong

这应该是一种前端的js渲染引擎,可以用这种语言来生成html,可以在里面实现一些基础的逻辑控制与其他文件的引入。
现在用的比较多的有:
1.jade---node的Express框架默认渲染模板,和HTML长得不是很像,区分TAB和Space
2.ejs---感觉你所说的就是这个
3.swig---类Django/Jinja渲染模板
4.……
关于怎么使用可以查看他的官方文档~

黄舟

这个语法和ejs模版挺像的,看看是否使用ejs模版。

Ty80

有很多客户端的模板生成引擎,看你这个,有点像是 EJS(http://www.embeddedjs.com/)

巴扎黑

这是前端模版,其实就是把后端模版那套拿到js中来,可以在模版中写js的逻辑,可以看下这里 https://github.com/yanhaijing/template.js

巴扎黑

cshtml 表明 可以用服务端视图MVC引擎
ASP.NET MVC 现在已有四种主要的视图引擎。
其他三种引擎是SparkNHaml和传统的ASPX文件模板..

但是 cshtml,在服务端渲染(Render)之后,也是一个html,所以也支持其他的js类库 ,比如ReactJs/template.js/..等第三方标记语法
在第三方类库加载之后,它就可以对这些包含标记的html进行编译
,产生最终的 标准hmtl

整个过程就是 服务端cshtml->客户端标记html->最终html

阿神

这是模板引擎来的。不同模板引擎有不同的语法,但是目的都是方面可以html里面实现一些逻辑控制

Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template