MGTemplateEngine 模版引擎简单使用

用于Rust的简单,小型和极快的模板引擎-Rust开发 用于Rust的简单,小型,非常快的模板引擎用于Rust的简单,小型,非常快的模板引擎 API文件| 示例:sparkles:特性受EJS启发的简单直观的语法相对较少的依赖项(总计少于15个板条箱)极快(请参阅基准测试)更好的错误消息除非显式返回错误,否则模板渲染永远不会失败。 语法高亮显示支持(vscode,vim)在更新模板文件时自动重新编译源。 适用于Rust 1.42或更高版本:fish:取决于示例 立即下载

MGTemplateEngine比较象 PHP 中的 Smarty 
模版引擎,是一个轻量级的引擎,简单好用。只要设置很多不同的HMTL模版,就能轻松的实现一个View多种内容格式的显示,对于不熟悉HTML或者减轻
工作量而言,把这些工作让设计分担一下还是很好的,也比较容易实现设计想要的效果。
首先,看看模版的代码

<!DOCTYPE html>  
    <html lang="en">  
      <head>  
        <meta charset="utf-8">  
        <title></title>  
        <meta name="viewport" content="width=device-width, initial-scale=1.0">  
        <link href="./detail.css" rel="stylesheet">  
      </head>  
      <body>  
      <div id='container' name="container">  
        <div class="title">{{ title }}</div>  
        <div class="date">{{ date }}</div>  
        <div class="content">{{ content }}</div>  
      </div>  
      </body>  
</html>  

Objective-C代码 - 下面的创建代码MGTemplateEngine都是从官方的例子中参考下来的,已经有很详细的说明

// Set up template engine with your chosen matcher.  
MGTemplateEngine *engine = [MGTemplateEngine templateEngine];  
//[engine setDelegate:self];  
[engine setMatcher:[ICUTemplateMatcher matcherWithTemplateEngine:engine]];  
      
// 这里就是设置,或者里边塞变量的地方。其实也可以设置一个数组,这样模板的灵活也会更强。这里我就不演示了官方有例子  
[engine setObject:self.detailData[@"title"] forKey:@"title"];  
[engine setObject:self.detailData[@"content"] forKey:@"content"];  
      
// MGTemplateEngine/Detail/detail.html  
// MGTemplateEngine/Detail/detail.css  
NSString *templatePath = [[NSBundle mainBundle] pathForResource:@"detail" ofType:@"html"];  
      
// Process the template and display the results.  
NSString *html = [engine processTemplateInFileAtPath:templatePath withVariables:nil];  
      
// 获得HTML  
self.htmlWebView = [[UIWebView alloc] initWithFrame:CGRectMake(8, 5, 304, 320)];  
self.htmlWebView.delegate = self;  
self.htmlWebView.userInteractionEnabled = NO;  
      
// 你就能加载到HTML里面的.css文件  
NSString *baseURL = [[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@"Detail"];  
[self.htmlWebView loadHTMLString:html baseURL:[NSURL fileURLWithPath:baseURL]];  
[self.detailView addSubview:self.htmlWebView]; 

因为我的UIWebView是在插入到UITableView,所以在UIWebView加载完后,就得重新计算高度。因为我想让用户感觉不到这其实是一个HTML。

// 我将UIWebView添加到了self.detailView  
self.listTableView.tableHeaderView = self.detailView;  
#pragma mark -
#pragma mark -# UIWebViewDelegate

- (void)webViewDidFinishLoad:(UIWebView *)webView {

// 获取整个HMTL的高度,这很好理解,很简单的JS
NSString *heightString = [self.htmlWebView stringByEvaluatingJavaScriptFromString:@"document.getElementById(\"container\").offsetHeight;"];
// 重设view内容大小
CGRect nFrame = self.detailView.frame;
nFrame.size.height = [heightString doubleValue] + 35.0;
self.detailView.frame = nFrame;

// 重设webview内容大小
CGRect nWebViewFrame = self.htmlWebView.frame;
nWebViewFrame.size.height = [heightString doubleValue] + 15;
self.htmlWebView.frame = nWebViewFrame;

// 让UIWebView加载完后,才设置UITableView,最后才加载评论
[self tableViewSetting];
[self getCommentList];
}

以上的都是 MGTemplateEngine 很基本的使用,将来也会大派用场的。对于内容页的显示,没有比HTML来的更方便直接,通过切换模版和简单的参数设置,多个不同类型的栏目也可以使用同一个详细页,很大程度上减轻工作理和易于维护。
要更深入的了解,可以去 MGTemplateEngine 官方网站


另参考:https://github.com/mattgemmell/MGTemplateEngine


iOS 模版引擎 MGTemplateEngine.zip iOS 模版引擎 MGTemplateEngine ,如果你用过php的Smarty,你一定知道模板引擎说的是什么。Matt Gemmell开发了一个基于... 立即下载

相关推荐

【计算机组成原理】课程设计四:控制器设计(二)

本文主要是介绍了计算机组成原理课程设计四其二,即控制器设计(二),属于计算机课程设计专栏

superiony的博客 1428

MGTemplateEngine 模版发动机简单使用

https://github.com/nxtbgthng/MGTemplateEngine MGTemplateEngine 模版引擎      MGTemplateEngine比较象 PHP 中的 Smarty 模版引擎,是一个轻量级的引擎,简单好用。只要设置很多不同的HMTL模版,就能轻松的实现一个View多种内容格式的显示,对于不熟悉HTML或者减轻工作量而言,把这些工作

qi_ruihua的专栏 1397

不止于连接:用VS Code Remote-SSH深度开发树莓派(Ubuntu 22.04环境实战)

本文详细介绍了如何在Ubuntu 22.04环境下使用VS Code的Remote-SSH功能进行树莓派深度开发。通过SSH配置、VS Code扩展安装和远程环境优化,开发者可以在本地高效编写代码,同时在树莓派上直接运行和测试,解决性能瓶颈问题。文章还提供了高级功能如端口转发、多项目管理和远程调试的实战技巧。

didui8202的博客 352

springboot使用TemplateEngine发送HTML邮箱验证码

springboot使用TemplateEngine发送HTML邮箱验证码 和别的博主没什么不一样,但是别的博主都没有贴出来TemplateEngine使用是html模板的路径设置这里贴出 pom.xml依赖 <!-- 邮箱maven --> <dependency> <groupId>org.springframework.boot</groupId> <artif

weixin_53489301的博客 5653

MQTT(一)C#使用 MQTTnet 快速实现 MQTT 通信(文末有完整Demo下载)

目录 MQTT(一)C#使用 MQTTnet 快速实现 MQTT 通信(文末有完整Demo下载) MQTT(二)在windows64位上安装Python环境 MQTT(三)Python客户端+net客户端+net服务端 简单通信 MQTT(四)树莓派开机自动运行Python客户端 MQTT(五)EMQ开源MQTT消息服务器 1 什么是 MQTT ? MQTT(Message Que...

pw的博客 10万+

SAP ABAP实战:如何用CVI_EI_INBOUND_MAIN批量更新BP邮箱(附完整代码)

本文深入解析了SAP ABAP中CVI_EI_INBOUND_MAIN函数在业务伙伴(BP)邮箱地址批量维护场景下的应用。通过详细讲解数据结构构建、关键参数(如任务参数'5')配置及完整代码示例,为开发者提供了一套高效、稳定的批量更新解决方案,并分享了性能优化与错误处理的最佳实践。

weixin_29228781的博客 76

MGTemplateEngine: 快速构建动态模板的工具

MGTemplateEngine: 快速构建动态模板的工具 是一个轻量级、可扩展的模板引擎,可以帮助开发者快速创建和管理动态模板。它提供了简单易懂的语法,可以方便地在模板中嵌入变量和逻辑控制语句。 功能特性 简单易用:MGTemplateEngine 提供了清晰明了的语法,易于上手。 跨平台支持:可以在多种平台上运行,包括 Windows、Linux 和 macOS。 高性能:采用了高效的编译器...

gitblog_00005的博客 482

【FPGA XDMA AXI Bridge 模式】PCIe:BARs 和 AXI:BARs 含义解析

Xilinx的 DMA/Bridge Subsystem for PCI Express IP核中,支持普通的XDMA模式,但是这种模式只允许主机端发起PCIe 读写请求,FPGA内部无法主动发起读写请求,也即FPGA无法主动读写HOST的内存。而该IP核的另一种模式,AXI Bridge模式则支持HOST主动读写,以及FPGA主动读写。该模式下有个参数需要配置,分别是PCIe:BARs以及AXI:BARs。而上述的普通模式只有PCIe:BARs需要配置。下面详细说说这两个参数的含义。

weixin_45888152的博客 3730

推荐开源项目:MGTemplateEngine

推荐开源项目:MGTemplateEngine 项目介绍 MGTemplateEngine是一个基于Cocoa的本地模板引擎,由著名开发者Matt Gemmell开发。它的设计灵感来源于Smarty、FreeMarker和Django等模板系统,旨在帮助开发者生成基于模板和数据的文本输出。 项目技术分析 这个模板引擎的核心是其高度可定制性。默认标记(函数或语言构造)语法如{% for 1 to 5...

gitblog_00022的博客 403

使用R语言读取和处理CSV数据集

查看数据集的结构str(data)# 查看数据集的摘要统计信息str()函数将显示数据集的结构信息,包括变量名称、类型和前几行的值。summary()函数将提供数据集的摘要统计信息,如均值、中位数、最小值、最大值等。

CyberGenius的博客 3855

Python爬虫抓取淘宝商品详情页信息:从入门到高级技术应用

通过本篇博客,我们了解了如何使用Python爬虫抓取淘宝商品详情页的信息,如何使用requests和Selenium抓取静态和动态内容,如何应对淘宝的反爬虫机制,如何将抓取的数据保存到CSV文件等。随着爬虫技术的不断发展,开发者可以根据需要选择合适的工具和技术,如使用分布式爬虫框架提高抓取效率,或者利用OCR技术处理验证码等问题。在进行淘宝爬虫时,需要注意遵循相关法律法规和平台的爬虫政策,避免对平台造成过度的负担或侵犯其合法权益。

2201_76125261的博客 460

MGTemplateEngine 模版引擎简单使用以及MGTemplateEngine导入xcode6.1报错修改

MGTemplateEngine 模版引擎   一、  MGTemplateEngine比较象 PHP 中的 Smarty 模版引擎,是一个轻量级的引擎,简单好用。只要设置很多不同的HMTL模版,就能轻松的实现一个View多种内容格式的显示,对于不熟悉HTML或者减轻工作量而言,把这些工作让设计分担一下还是很好的,也比较容易实现设计想要的效果。 像网易、粉笔网都是用的该

M_baronJJ的专栏 1450

结构力学本构模型:复合材料模型:复合材料热力学行为技术教程_2024-08-07_06-54-53.Tex

热塑性复合材料是一种由热塑性树脂基体和增强纤维组成的复合材料。与热固性复合材料不同,热塑性复合材料在加热时可以软化,冷却时硬化,这一过程可以重复进行,因此它们具有可回收和可再加工的特性。热塑性树脂,如聚酰胺(尼龙)、聚碳酸酯、聚醚醚酮(PEEK)等,与碳纤维、玻璃纤维等增强材料结合,可以制备出具有高强度、高刚度和良好耐热性的复合材料。热粘弹性理论是研究材料在温度变化和时间依赖性载荷作用下的变形和应力响应。复合材料,由于其独特的微观结构,展现出复杂的热粘弹性行为。

808

iOS 模版引擎 MGTemplateEngine

iOS 模版引擎 MGTemplateEngine

且行且看 1558

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

ios中使用模版引擎渲染HTML页面

在iOS实际的开发中,使用UIWebView来加载数据使用的场景特别多。很多时候我们会动态的从服务器获取一段HTML的内容,然后App这边动态的处理这段HTML内容用于展示在UIWebView上。使用到的API接口为:- (void)loadHTMLString:(NSString *)string baseURL:(NSURL *)baseURL;由于HTML内容通常是变化的,所以我们需要动态生成

少年的博客 3846

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

MGTemplateEngine模版引擎

如果你用过php的Smarty,你一定知道模板引擎说的是什么。Matt Gemmell开发了一个基于Cocoa的类似的模板引擎,叫做MGTemplateEngine。 MGTemplateEngine是一套Cocoa的模板系统,基于模板和数据来生成文字输出,非常类似Smarty、FreeMarker和Django及其他的模板引擎。 如果你希望在Cocoa程序中通过参数生成文本数据的话(...

Coding 184

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

UIWebView---iOS中使用模板引擎渲染HTML界面

参考: iOS中使用模板引擎渲染HTML界面   MGTemplateEngine 模版引擎简单使用 在iOS实际的开发中,使用UIWebView来加载数据使用的场景特别多。很多时候我们会动态的从服务器获取一段HTML的内容,然后App这边动态的处理这段HTML内容用于展示在UIWebView上。使用到的API接口为: - (void)loadHT

Nero的专栏 3698

html5模板引擎渲染,UIWebView---iOS中使用模板引擎渲染HTML界面

在iOS实际的开发中,使用UIWebView来加载数据使用的场景特别多。很多时候我们会动态的从服务器获取一段HTML的内容,然后App这边动态的处理这段HTML内容用于展示在UIWebView上。使用到的API接口为:- (void)loadHTMLString:(NSString *)string baseURL:(NSURL *)baseURL; 传统的方法 由于HTML内容通常是变化的,所以...

weixin_30097621的博客 176

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

在iOS实际的开发中,使用UIWebView来加载数据使用的场景特别多。很多时候我们会动态的从服务器获取一段HTML的内容,然后App这边动态的处理这段HTML内容用于展示在UIWebView上。使用到的API接口为: - (void)loadHTMLString:(NSString *)string baseURL:(NSURL *)baseURL; 由于HTML内容通常是变化的

qq_19732563的博客 1012

ios基于html渲染,UIWebView-iOS中使用模板引擎渲染HTML界面_html/css_WEB-ITnose

在iOS实际的开发中,使用UIWebView来加载数据使用的场景特别多。很多时候我们会动态的从服务器获取一段HTML的内容,然后App这边动态的处理这段HTML内容用于展示在UIWebView上。使用到的API接口为:- (void)loadHTMLString:(NSString *)string baseURL:(NSURL *)baseURL; 传统的方法由于HTML内容通常是变化的,...

weixin_35890667的博客 324

粉笔网iPhone端使用的第三方开源库

粉笔网iPhone端使用的第三方开源库 前言 最近有朋友问我粉笔网 iPhone 端使用了哪些第三方的开源库。我在这儿整理了一下,分享给大家。 ASIHttpRequest ASIHttpRequest是一个被广泛使用的第三方网络访问开源库。用于提供更加友好的网络访问接口。相信很多搞 iOS 开发的朋友都用过它。ASIHttpRequest 的主要使用文档可以参考这里...

aaa1231722的博客 124
上一篇: druid简单教程
下一篇: 在CentOS下搭建自己的Git服务器
WaveDHW
博客等级 码龄20年 455粉丝 159原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值