Blaze是Meteor 软件包用于构建现场反应模板。
Render方法

这种方法被用于绘制模板到DOM。首先,我们将创建 myNewTemplate 之后渲染。 我们增加 myContainer 这将用来作为父元素的容器,所以render方法知道在何处呈现我们的模板。

meteorApp/client/app.html

<head>
<title>meteorApp</title>
</head> <body>
<div id = "myContainer">
</div>
</body> <template name = "myNewTemplate">
<p>Text from my new template...</p>
</template> 

下一步,我们将创建渲染功能这将需要两个参数。第一个是将要渲染的模板,第二个是,我们上面提到的父元素。

meteorApp/client/app.js

Meteor.startup(function () {
if(Meteor.isClient) {
var myNewTemplate = Template.myNewTemplate;
var myContainer = document.getElementById('myContainer');
Blaze.render(myNewTemplate, myContainer);
}
});

渲染数据

如果需要被动地传递一些数据,你可以使用 renderWithData 方法。 HTML和前面的例子完全相同。

meteorApp/client/app.html

<head>
<title>meteorApp</title>
</head> <body>
<div id = "myContainer">
</div>
</body> <template name = "myNewTemplate">
<p>Text from my new template...</p>
</template> 

我们可以在Meteor.renderWithData方法的第二个参数添加数据。其它两个参数和之前的实例相同,在这个例子中我们的数据将用于记录一些文本的功能。

meteorApp/client/app.js

Meteor.startup(function () {

   if(Meteor.isClient) {
var myNewTemplate = Template.myNewTemplate; var myData = function() {
console.log('Log from the data object...')
} var myContainer = document.getElementById('myContainer');
Blaze.renderWithData(myNewTemplate, myData, myContainer);
} });

删除方法

我们可以添加 remove

meteorApp/client/app.html

<head>
<title>meteorApp</title>
</head> <body>
<div id = "myContainer">
</div>
</body> <template name = "myNewTemplate">
<p>Text from my new template...</p>
</template> 

在这个例子中,我们将在三秒钟后移除模板。请注意,我们使用 Blaze.Remove方法 除去模板。

meteorApp/client/app.js

Meteor.startup(function () {
if(Meteor.isClient) {
var myNewTemplate = Template.myNewTemplate;
var myContainer = document.getElementById('myContainer');
var myRenderedTemplate = Blaze.render(myNewTemplate, myContainer); Meteor.setTimeout(function() {
Blaze.remove(myRenderedTemplate);}, 3000);
}
});
下表显示了可使用的其他方法。
S.No.
方法与细则
1

Blaze.getData([elementOrView])

用于从渲染元素检索数据。
2

Blaze.toHTML(templateOrView)

用于渲染模板或视图字符串。
3

Blaze.toHTMLWithData(templateOrView, data)

用于渲染模板或视图字符串附加数据。
4

new Blaze.View([name], renderFunction)

用于创建新 Blaze 反应性的DOM部分。

5

Blaze.currentView

用于获取当前视图。
6

Blaze.getView([element])

用于获取当前视图。
7

Blaze.With(data, contentFunc)

用于构造呈现一些内容与上下文的视图。
8

Blaze.If(conditionFunc, contentFunc, [elseFunc])

用于构造呈现一些有条件的内容的视图。
9

Blaze.Unless(conditionFunc, contentFunc, [elseFunc])

用于构造呈现一些有条件的内容(反转Blaze.if)的视图。
10

Blaze.Each(argFunc, contentFunc, [elseFunc])

用于构建为每个项目呈现 contentFunct 的视图。

11

new Blaze.Template([viewName], renderFunction)

使用名称和内容构建新的Blaze视图。
12

Blaze.isTemplate(value)

如果值是一个模板对象则返回true。

Meteor Blaze的更多相关文章

  1. Using View and Data API with Meteor

    By Daniel Du I have been studying Meteor these days, and find that Meteor is really a mind-blowing f ...

  2. 示例开发过程记录:meteor,react,apollo

    本示例记录一个开发过程: 1)参考 Meteor React TUTORIAL教程 https://www.meteor.com/tutorials/react/creating-an-app 2). ...

  3. 网站开发只需数小时?Meteor 说这才是未来

    原文: http://www.geekpark.net/topics/211573/ 那个想要挑战过去数十年沿用至今的网站开发模式的新势力来了. Meteor 是从 YC 孵化而出的现代网站开发平台, ...

  4. 【译】Meteor 新手教程:在排行榜上添加新特性

    原文:http://danneu.com/posts/6-meteor-tutorial-for-fellow-noobs-adding-features-to-the-leaderboard-dem ...

  5. POJ 3669 Meteor Shower【BFS】

    POJ 3669 去看流星雨,不料流星掉下来会砸毁上下左右中五个点.每个流星掉下的位置和时间都不同,求能否活命,如果能活命,最短的逃跑时间是多少? 思路:对流星雨排序,然后将地图的每个点的值设为该点最 ...

  6. 如何在Meteor中使用npm模块?

    首先,请在AtmosphereJs上搜索有无相关的封装包.尽量采用已有的封装包,而不是自己封装. 有两种方法在项目中使用来自npm的模块. 封装为Meteor包并在项目中添加包.使用meteor cr ...

  7. windows下Meteor+AngularJS开发的坑

    有复杂的地方我再开贴记录,这里只记录容易解决的坑. 1. windows下手工增加smart package.直接将下载下来的包扔到meteor package中.记得将文件夹名字改得和smart.j ...

  8. Meteor + node-imap(nodejs) + mailparser(nodejs) 实现完整收发邮件

    版本信息: Meteor:windows MIS安装  0.6.4 node-imap:npm指定的0.8.0版,不是默认的0.7.x版. mailparser:npm安装0.3.6 以下是记录踩到的 ...

  9. 手工给Meteor增加smart package的方法

    windows下无法装mrt(Meteor的包管理工具).不过还好smart package本身也就只是一个文件夹而已,不需要在Meteor中注册什么东西.所以直接把smart package扔到me ...

随机推荐

  1. [整理] webpack+vuecli打包生成资源相对引用路径与背景图片的正确引用

    webpack+vuecli打包生成资源相对引用路径与背景图片的正确引用 https://www.cnblogs.com/moqiutao/p/7496718.html

  2. stay hungry stay foolish.

    I am honored to be with you today at your commencement from one of the finest universities in the wo ...

  3. 搜索 || DFS || UOJ 146 信息传递

    DFS+回溯 找最小环 每个人知道自己的生日,每次把自己知道的生日告诉固定的一个人,问最少多少次之后能从别人口中听到自己的生日 找一个最小环 #include <iostream> #in ...

  4. mysql的sql语句练习的2个网址

    sql语句练习: https://blog.csdn.net/mrbcy/article/details/68965271 完成. https://blog.csdn.net/flycat296/ar ...

  5. SQL Server 2008 阻止保存要求重新创建表的更改

    取消[阻止保存要求重新创建表的更改]复选框

  6. DB2数据库在线备份还原

    DB2在线备份设置方法: 第一步:开启归档日志 db2 update db cfg for TEST_DB  using logretain on 第二步:重启数据库 第三步:进行一次离线备份 db2 ...

  7. SCI journals on Energy

    SCI journals on Energy Table of Contents 1. SCI- Clarivate - Thomson Reuters 1 SCI- Clarivate - Thom ...

  8. 算法导论 第六章 堆排序(python)

    6.1堆 卫星数据:一个带排序的的数通常是有一个称为记录的数据集组成的,每一个记录有一个关键字key,记录的其他数据称为卫星数据. 原地排序:在排序输入数组时,只有常数个元素被存放到数组以外的空间中去 ...

  9. SQL 一次插入多条记录

    本文介绍如何快速插入多条数据到数据表中,以满足sql语句学习或项目测试的需要. 本文非原创,是对移步原文的重新整理. 如有以下表格,如图: 1,原始添加记录的方式,sql语句如下: insert in ...

  10. tiles介绍

    主要目的是为了将复数的jsp页面作为一个的页面的部分机能,然后用来组合成一个最终表示用页面用的,这样的话,便于对页面的各个机能的变更及维护. Tiles使得struts在页面的处理方面多了一种选择.并 ...