Closed seanjsong closed 9 years ago
@seanjsong layout.html 的 {{> yield}} 就是 layout 如何 调用 index 之间的关联。
@Seanjsong 在discovermeteor里面专门讲解了{{>yield}}的技术细节,layout.html的关键是在route.configure函数完成的,全新的meteor工程,一般上来就看router.js
这个官方文档应该是讲得最清楚的了。 https://github.com/iron-meteor/iron-router/blob/devel/Guide.md#layouts
谢谢!理解了。那个layout是缺省的,所有route都在那个layout之中填内容。另外我知道为什么client/templates/index.html 会成为整个页面的tag框了,其实不管是叫index.html还是随便叫什么名字都一样,meteor会自己找出有<html>和<body>标记的文件
meteor 里文件的名字和路径都无所谓. 还记得我第一次课程上说到过的. 所有代码都是 meteor 编译以后才发到 client 和 server 去执行的. 加载顺序是按照路径深度和字母顺序加载的, 最后编译成为一个大文件(HTML,或者 JS). 如果没有新的问题, 这个 issue 可以关闭了
client/templates/index.html应该是整个页面的外框了,包含所有其它模板,但它是由谁加载的呢?还是说因为它叫client/templates/index.html就自动被meteor当成首页了?
我看到both/router.js里面有
client/templates/layout.html 和 client/templates/index/index.html 应该就是被router里的这两行代码加载的吧?
看起来client/templates/layout.html应该是个框(有左右两个side menu和一个空着的side menu content),而client/templates/index/index.html(有header title和功能列表)看起来应该是包含在layout.html的side menu content里面,对吧?但这个包含关系是由哪段代码控制的呢?没看懂。