如果它不是Ember组件,它是什么?

时间:2016-12-08 15:37:45

标签: ember.js

我有一个Ember模板.hbs文件及其控制器和路由。我没有component.js文件。什么是Ember not-quite-component

2 个答案:

答案 0 :(得分:1)

当您在浏览器中键入URL时,Ember Router具有处理该特定URL的路由或路由。

Route可以呈现模板,分配模型,处理动作,重定向到新路线等。

例如,如果需要,可以自定义路由的关联Controller,以处理操作或自定义属性。

如果路线呈现Template,则可能会在模板中调用某个组件,或者它可能不会。

Component通常封装HTML标记和功能,旨在以某种方式重用,或隔离关注的子集。如果不需要JavaScript,则可以单独使用组件模板。如果需要JavaScript来实现其他功能,则还需要组件模板的组件子类。

你可以说控制器是"不是一个组件",因为它的行为与组件的行为大致相同。但是,控制器与之关联的模板由其路径呈现。

答案 1 :(得分:0)

你刚刚命名了它。 “控制器”,“路线”和“模板”。模板属于控制器,控制器属于路由。如果您没有定义默认控制器,则会为您神奇地提供默认控制器,默认情况下也会提供空模板。如果您正在与某人交谈并需要传达您所拥有的内容,则可以稍微假设该路线,因为它是唯一绝对需要到达页面的内容,因此您可以简单地说“我的控制器”。