当前位置:首页 > H5 > 正文内容

tmodjs模板语法

高老师9年前 (2017-06-24)H52251

    TmodJS是一套完整的前端模块框架。

    虽然我们PHP框架自带各种模板引擎,但是始终是后端模板引擎。例如我们在使用ThinkPHP3.2.3中如果是Ajax异步加载页面,拼接HTML真的是很头疼的一件事情。

    第一次使用TmodJS是在人人商城开发中使用,用起来非常方便,于是记录下来。

    先看看后端的代码:

<?php

//人人商城自带的生成json函数
function show_json($_var_31 = 1, $_var_32 = null)
{
	$_var_33 = array("status" => $_var_31);
	if ($_var_32) {
		$_var_33["result"] = $_var_32;
	}
	die(json_encode($_var_33));
}


//假设shop是商品列表
$shop=array();
$shop['goods']=array(array('title'=>'苹果'),array('title'=>'香蕉'),array('title'=>'荔枝'),array('title'=>'大枣'));


show_json(1,$shop);


?>

    再看看基本的前端页面:

<html>
	<head>
		<title></title>
		<meta charset="UTF-8"/>
        <script language="javascript" src="/js/require.js"></script>
        <script language="javascript" src="/js/config.js"></script>      
	</head>
	<body>
		
		<div id="shop">

				
				商城商品
				<script id='shop_goods' type='text/html'>
					<ul>
						<%each goods as g %>
						<li><%g.title%></li>
						<%/each%>
					</ul>
				</script>			
		</div>
		

		
		<script type="text/javascript">
			
			require(['jquery','tpl','core'],function(jquery,tpl,core){
				
	
				var url="http://learn.cn/api.php";
		                core.json(url, {}, function (json) {
		                var result = json.result;
					$('#shop').html(  tpl('shop_goods',result) );
				});
			
			});	
			
		</script>	
		
	</body>
</html>

以上的页面要求商城首页打开默认使用异步加载数据显示。

解释以上代码:

                        RequireJS是一个非常小巧的JavaScript模块载入框架,用于加载其他js,config.js是配置要加载的js的位置和别名。core是人人商城的核心Js,内置非常的工具,例如提示,get/post工具。

                        core.json是获取后端json的方法,然后将后端发送的json赋予#shop下的shop_goods模板,然后就能进行循环了.

下载附件:

                

learn.cn.rar

扫描二维码推送至手机访问。

版权声明:本文由高久峰个人博客发布,如需转载请注明出处。

本文链接:https://blog.20230611.cn/post/241.html

分享给朋友:

“tmodjs模板语法” 的相关文章

Javascript-WebSql的用法

Javascript-WebSql的用法

    WebSql的原理是浏览器集成了sqllite数据库,Js操作,浏览器协助完成,没有多复杂。<!--          三个核心方法   ...

Javascript获取Mac地址

Javascript获取Mac地址

<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>获取mac地址</title> </head&g...

ajax上传文件,formdata上传文件,ajax上传file文件,原生ajax上传文件,ajax上传图片,ajax上传文件formdata

ajax上传文件,formdata上传文件,ajax上传file文件,原生ajax上传文件,ajax上传图片,ajax上传文件formdata

通过FormData对象可以组装一组用 XMLHttpRequest发送请求的键/值对。它可以更灵活方便的发送表单数据,因为可以独立于表单使用。如果你把表单的编码类型设置为multipart/form-data ,则通过FormData传输的数据格式和表单通过submit() 方法传输的数据格式相同...

js cookie操作,js获取cookie值的方法,js 设置cookie

js cookie操作,js获取cookie值的方法,js 设置cookie

维护老项目中客户提到一个页面中有6个表单以上,导致每次保存一个其他的数据全部丢失,自己比较懒没有全部更换为ajax.用户每次输入完成或者选择完成记录cookie,每次提交后加载页面完成初始化cookie即可。以下代码取自w3school比较完善,之前在其他博客使用的经常出现bug,这个比较推荐使用:...

 js 工厂模式示例,js工厂模式原理

js 工厂模式示例,js工厂模式原理

查看文章前你需要了解以下2点://1.this指向的是windows对象,通过console.log(this)可以查看到对象包含所有的方法和属性//2.全局变量属于this对象的属性通过console.log(this)可以查看到对象包含我们设置的全局变量我们经常在创建相同结构的Js对象会重复的设...

 js对象冒充实现继承

js对象冒充实现继承

//构造函数 function Box(name,age){ this.name=name; this.age=age; this.run=function(){ return this.name+'--'+this.age; } } var&nbs...