gpt4 book ai didi

javascript - emberjs 没有处理该事件

转载 作者:行者123 更新时间:2023-12-02 18:49:14 26 4
gpt4 key购买 nike

我尝试复制搜索字段,就像它们在 emberjs.com 处显示的那样。但是由于某种原因,当输入查询并按 Enter 或单击提交按钮时,我的代码不断产生以下错误(在 google chrome 中):

Uncaught Error: Nothing handled the event 'MyApp.ApplicationController.doSearch'.

我正在使用的代码可以在http://jsfiddle.net/Mn2yy/查看

有人可以解释为什么会发生此错误以及我需要做什么才能解决它吗?

编辑:如果链接断开,这些是代码的相关部分:

搜索页面路线:

MyApp.SearchRoute = Ember.Route.extend({
setupController: function(controller) {
controller.set('searchQuery', this.get('query'));
},

renderTemplate: function() {
this.render('searchpage', { into: 'container' });
}
});

应用程序 Controller :

MyApp.ApplicationController = Ember.Controller.extend({
// the initial value of the `search` property
search: '',

doSearch: function() {
// the current value of the text field
var query = this.get('search');
this.transitionToRoute('search', { query: query });
}
});

和模板:

<script type="text/x-handlebars" data-template-name="container">
<button {{action "doSearch" target="MyApp.ApplicationController"}} rel="tooltip-bottom" title="search" class="icon"><i class="icofont-search"></i></button>
{{view Ember.TextField valueBinding="MyApp.ApplicationController.search" action="MyApp.ApplicationController.doSearch"}}

{{outlet}}
</script>
<script type="text/x-handlebars" data-template-name="searchpage">
<h1>Search</h1>
{{#linkTo "home"}}Homepage{{/linkTo}}
<p>You searched for: "{{searchQuery}}"</p>
</script>

最佳答案

您不应该对绑定(bind)、目标等使用绝对路径,例如 MyApp.ApplicationController.search

由于您在应用程序 Controller 上声明了 search 属性和 doSearch 操作,因此只需键入:{{view Ember.TextField valueBinding="search “行动=“doSearch”}}

关于javascript - emberjs 没有处理该事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16012309/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com