这种方法被用于绘制模板到DOM。首先,咱们将建立 myNewTemplate 以后渲染。 咱们增长 myContainer 这将用来做为父元素的容器,因此render方法知道在何处呈现咱们的模板。html
meteorApp/client/app.htmlapp
<head> <title>meteorApp</title> </head> <body> <div id = "myContainer"> </div> </body> <template name = "myNewTemplate"> <p>Text from my new template...</p> </template>
下一步,咱们将建立渲染功能这将须要两个参数。第一个是将要渲染的模板,第二个是,咱们上面提到的父元素。less
meteorApp/client/app.jsspa
Meteor.startup(function () { if(Meteor.isClient) { var myNewTemplate = Template.myNewTemplate; var myContainer = document.getElementById('myContainer'); Blaze.render(myNewTemplate, myContainer); } });
若是须要被动地传递一些数据,你能够使用 renderWithData 方法。 HTML和前面的例子彻底相同。htm
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方法的第二个参数添加数据。其它两个参数和以前的实例相同,在这个例子中咱们的数据将用于记录一些文本的功能。ci
meteorApp/client/app.jselement
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); } });
咱们能够添加 removerem
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。
|