当前位置:K88软件开发文章中心编程语言JavaScriptMeteor → 文章内容

Meteor 模版

减小字体 增大字体 作者:佚名  来源:网上搜集  发布时间:2019-1-15 15:28:43

'a'); a.href = this.url; return a.hostname; }});这一次我们 domain helper 的值不再是一个数组,而是一个匿名函数。相比起我们之前简化的虚拟数据的例子,这种模式更为常见(而且更有用)。这个 domain helper 方法通过 JavaScript 来获取一个 URL 地址并返回其域名。但是它一开始是从哪里获得 URL 地址呢?为了回答这个问题,我们需要回到我们的 posts_list.html 模板。{{#each}} 代码块不仅遍历我们数组,它还在代码块范围内将 this 的值赋予被遍历的对象。这意味着在 {{#each}} 标记之间,每个 post 都可以通过 this 依次访问,并且一直延伸到模板 helper(post_item.js)中。我们现在明白了为什么 this.url 会返回当前 post 的 URL。而且,如果我们在 post_item.html 模板里面使用 {{title}} 和 {{url}},Meteor 就会知道需要去调用 this.title 和 this.url 去返回我们想要的正确值。设置 postItem 的 domain helper神奇的 JavaScript尽管这对于 Meteor 来说并不特别,这里会简单解释一下上面“神奇的 JavaScript 代码”。首先,我们创建一个空的锚(a)HTML 标签并储存在内存中。然后我们将其 href 属性设置为当前 post 的 URL (正如我们刚刚讲到的,this 在 helper 中正是当前被操作的对象)。最后,我们利用 a 标签的特别的 hostname 属性来返回 URL 的域名。如果你正确地紧跟着我们的进度,这时候你就会在浏览器中看到一个 post 列表。但这个列表只是调用了静态数据,它没有利用到 Meteor 实时性的特点。我们将在下一章向你展示该如何去修改!动态代码重载你可能已经注意到,当你修改文件的时候,不需要手动刷新页面,浏览器就会自动重新加载。这是因为 Meteor 跟踪了项目目录下的所有文件,当检测到其中一个文件发生改变,它就会自动刷新你的浏览器。Meteor 的动态代码重载是相当智能的,它甚至可以在两个刷新动作之间保存你的 App 状态。

上一页  [1] [2] 


Meteor 模版