使用模板引擎渲染HTML界面

使用模板引擎渲染HTML界面

by 伍雪颖

模板引擎:GRMustache

pod ‘GRMustache‘,
‘~> 7.3.0‘

html模板:

template.html

<HTML>

<HEAD>

</HEAD>

<BODY>

<H1> {{ name }}
</H1>

<P> {{ content }}
</P>

</BODY>

</HTML>

调用:

- (void)viewDidLoad {

[super
viewDidLoad];

NSString *path = [[NSBundle
mainBundle]
bundlePath];

NSURL *baseUrl = [NSURL
fileURLWithPath:path];

NSString *htmlString = [self
demoFormatWithName:@"wuxueying"
value:@"hello"];

[self.webView
loadHTMLString:htmlString
baseURL:baseUrl];

}

- (NSString *)demoFormatWithName:(NSString *)name value:(NSString
*)value {

NSString *fileName =
@"template.html";

NSString *path = [[[NSBundle
mainBundle]
bundlePath]
stringByAppendingPathComponent:fileName];

NSString *template = [NSString
stringWithContentsOfFile:path
encoding:NSUTF8StringEncoding
error:nil];

NSDictionary *renderObject =
@{@"name":name,@"content":value};

NSString *content = [GRMustacheTemplate
renderObject:renderObject
fromString:template
error:nil];

return content;

}

效果:

时间: 2024-11-07 18:46:38

使用模板引擎渲染HTML界面的相关文章

iOS:使用模板引擎渲染HTML界面

在实际开发中,UIWebView控件接受一个HTML内容,用于相应的界面,下面是该API的接口: - (void)loadHTMLString:(NSString *)string baseURL:(nullable NSURL *)baseURL 由于HTML内容通常是变化的,所以我们需要在内存中生成该HTML内容.比较简单粗暴的做法是将该HTML的基本内容定义在一个NSString中,然后用[NSString stringWothFormat]方法将内容进行格式化,示例如下: //给对应的标

Spring Boot? 使用Thymeleaf模板引擎渲染web视图

静态资源访问 在我们开发Web应用的时候,需要引用大量的js.css.图片等静态资源. 默认配置 Spring Boot默认提供静态资源目录位置需置于classpath下,目录名需符合如下规则: /static /public /resources /META-INF/resources 举例:我们可以在src/main/resources/目录下创建static,在该位置放置一个图片文件.启动程序后,尝试访问http://localhost:8080/D.jpg.如能显示图片,配置成功. 渲染

SpringBoot:2.SpringBoot整合Thymeleaf模板引擎渲染web视图

在Web开发过程中,Spring Boot可以通过@RestController来返回json数据,那如何渲染Web页面?Spring Boot提供了多种默认渲染html的模板引擎,主要有以下几种: Thymeleaf FreeMarker Velocity Groovy Mustache Spring Boot 推荐使用这些模板引擎来代替 Jsp,Thymeleaf 只是其中一种,下面我们来简单聊聊Thymeleaf及实践一下如何整合Spring Boot和Thymeleaf. 1.Thyme

Spring Boot? 使用freemarker模板引擎渲染web视图

效果图 代码 package com.wls.integrateplugs.hello.controller; /** * Created by wls on 2017/8/24. */ import java.util.Locale; import java.util.UUID; import javax.servlet.http.HttpSession; import com.sun.org.apache.regexp.internal.RE; import org.springframew

Handlebars模板引擎渲染页面

基本使用,并简单列举了几种常见的数据格式的渲染方式 js: var testTpl = Handlebars.compile($('#test').html()); //模板 var arr = [1,2,3] //数据 $('#box').append(testTpl(arr)); //调用 html: <script type="text/x-handlebars-template" id="test"> {{#each this}} <li&

高性能JavaScript模板引擎原理解析

随着 web 发展,前端应用变得越来越复杂,基于后端的 javascript(Node.js) 也开始崭露头角,此时 javascript 被寄予了更大的期望,与此同时 javascript MVC 思想也开始流行起来.javascript 模板引擎作为数据与界面分离工作中最重要一环,越来越受开发者关注,近一年来在开源社区中更是百花齐放,在 Twitter.淘宝网.新浪微博.腾讯QQ空间.腾讯微博等大型网站中均能看到它们的身影. 本文将用最简单的示例代码描述现有的 javascript 模板引擎

Juicer模板引擎使用笔记

关于Juicer:Juicer 是一个高效.轻量的前端 (Javascript) 模板引擎,使用 Juicer 可以是你的代码实现数据和视图模型的分离(MVC). 除此之外,它还可以在 Node.js 环境中运行.Juicer中文文档地址:http://juicer.name/docs/docs_zh_cn.html 1.引入Juicer插件 <script type="text/javascript" src="juicer-min.js"></

最好的模板引擎Beet的6大创新点

2011年发布Beetl 0.5的时候,新闻是在Iteye上发布的,老资格程序员可能预料Iteye上会发生什么了,我收到的最多的不是鼓励和喝彩,而是吐槽,"又是一个轮子"是里面最大的声音.尽管4年前的版本还只是个雏形,但实际上已经开始有了与众不同创新点.我将在本文介绍一下Beetl的创新点和创新思路,希望有志从事开源开发的人能借鉴 首先,Beetl是一个脚本风格的模板,这顺应了新时代程序员的审美. freemarker 当初为什么能从模板引擎中脱颖而出,其实与当时XML流行无不关系.程

JS 模板引擎 BaiduTemplate 和 ArtTemplate 对比及应用

最近做项目用了JS模板引擎渲染HTML,JS模板引擎是在去年做项目是了解到的,但一直没有用,只停留在了解层面,直到这次做项目才用到,JS模板引擎用了两个 BaiduTemplate 和 ArtTemplate. 项目之初用的是BaiduTemplate引擎,项目完成后发布到互联网,发现数据量大时,加载速度慢了点,就考虑换其它模板引擎是否能提高渲染效率,在网上查找.对比后发现ArtTemplate更好一点,就深入了解与学习了下,两个引擎语法有点差别,但结果是一至的,下面具体介绍一下两个引擎的使用情