如何访问"generated application controller"?在 Ember
How to access a "generated application controller"? in Ember
在我的 HTML 文件中我有:
<script type="text/x-handlebars">
//some code
{{outlet}}
</script>
它一直作为我所有模板的布局,但它没有我制作的任何控制器,所以 Ember 生成了一个。
我的问题是如何访问此车把的控制器?
生成的应用控制器
在 official documentation 上说:
The application template is the default template that is rendered when
your application starts.
这就是我希望能够访问的内容。我真正想做的只是添加它:
needs: ['someController']
PS:找了一下之后,我尝试在控制器文件夹中创建一个文件“application.js
”,但似乎不是这个。
您可以使用简单的 IndexRoute
.
创建 application.js
和 route.js
文件
App = Ember.Application.create();
App.IndexRoute = Ember.Route.extend({
model: function() {
return ['red', 'yellow', 'blue'];
}
});
并用模板替换您的{{outlet}}
<ul>
{{#each item in model}}
<li>{{item}}</li>
{{/each}}
</ul>
看看这个初学者示例:http://emberjs.jsbin.com/koziwatacu/1/edit
官方文档:http://guides.emberjs.com/v1.11.0/templates/the-application-template/
在你的情况下,我认为你正在寻找的是在控制器文件夹中制作一个 application.js 文件,如下所示:
App.ApplicationController = Ember.ObjectController.extend({
needs: ['someController'],
});
并且不要忘记将其包含在您的 html 文件中。
<script type="text/x-handlebars">
//some code
{{outlet}}
</script>
此脚本在 HTML 中定义应用程序的主模板。通常您需要为您的脚本命名,但这对于 Application/index
不是必需的 - 请参阅 documentation.
同样来自文档:"By default, your top-most application template is bound to your ApplicationController:"
App.ApplicationController = Ember.Controller.extend({});
所以如果你需要为应用程序定制一些东西,而不是使用自动生成的控制器,你必须创建一个显式的;在那里你可以添加 needs: ['someController']
.
在我的 HTML 文件中我有:
<script type="text/x-handlebars">
//some code
{{outlet}}
</script>
它一直作为我所有模板的布局,但它没有我制作的任何控制器,所以 Ember 生成了一个。
我的问题是如何访问此车把的控制器?
生成的应用控制器 在 official documentation 上说:
The application template is the default template that is rendered when your application starts.
这就是我希望能够访问的内容。我真正想做的只是添加它:
needs: ['someController']
PS:找了一下之后,我尝试在控制器文件夹中创建一个文件“application.js
”,但似乎不是这个。
您可以使用简单的 IndexRoute
.
application.js
和 route.js
文件
App = Ember.Application.create();
App.IndexRoute = Ember.Route.extend({
model: function() {
return ['red', 'yellow', 'blue'];
}
});
并用模板替换您的{{outlet}}
<ul>
{{#each item in model}}
<li>{{item}}</li>
{{/each}}
</ul>
看看这个初学者示例:http://emberjs.jsbin.com/koziwatacu/1/edit
官方文档:http://guides.emberjs.com/v1.11.0/templates/the-application-template/
在你的情况下,我认为你正在寻找的是在控制器文件夹中制作一个 application.js 文件,如下所示:
App.ApplicationController = Ember.ObjectController.extend({
needs: ['someController'],
});
并且不要忘记将其包含在您的 html 文件中。
<script type="text/x-handlebars">
//some code
{{outlet}}
</script>
此脚本在 HTML 中定义应用程序的主模板。通常您需要为您的脚本命名,但这对于 Application/index
不是必需的 - 请参阅 documentation.
同样来自文档:"By default, your top-most application template is bound to your ApplicationController:"
App.ApplicationController = Ember.Controller.extend({});
所以如果你需要为应用程序定制一些东西,而不是使用自动生成的控制器,你必须创建一个显式的;在那里你可以添加 needs: ['someController']
.