Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/400.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 余烬控制器出现奇怪错误_Javascript_Ember.js_Ember Cli - Fatal编程技术网

Javascript 余烬控制器出现奇怪错误

Javascript 余烬控制器出现奇怪错误,javascript,ember.js,ember-cli,Javascript,Ember.js,Ember Cli,我使用的是Ember Cli版本:0.2.3 我目前正在探索与余烬,并尝试一个非常简单的应用程序 我的模板中有这个/about.hbs <h1>About</h1> <p>I'll write something interesting here</p> <button type="btn btn=primary"{{action 'clickMe'}}>Click me!</button> 当我点击按钮时,我得到了这

我使用的是Ember Cli版本:0.2.3

我目前正在探索与余烬,并尝试一个非常简单的应用程序

我的模板中有这个/about.hbs

<h1>About</h1>

<p>I'll write something interesting here</p>

<button type="btn btn=primary"{{action 'clickMe'}}>Click me!</button>
当我点击按钮时,我得到了这个错误,我检查了语法,似乎无法捕捉到错误。我需要一些新鲜的眼睛

Uncaught Error: Nothing handled the action 'clickMe'. If you did handle the action, this error can be caused by returning true from an action handler in a controller, causing the action to bubble.

现在,我明白了消息的意思,但我还不知道如何修复它

Ember可能找不到您的控制器。您可以使用。在任何情况下,您都应该在ember cli项目中使用ES6约定。你可以进一步了解这个主题

无论如何,尝试通过键入以下命令行创建关于控制器的信息

ember generate controller about

然后手动添加您的操作。

余烬可能找不到您的控制器。您可以使用。在任何情况下,您都应该在ember cli项目中使用ES6约定。你可以进一步了解这个主题

无论如何,尝试通过键入以下命令行创建关于控制器的信息

ember generate controller about

然后手动添加操作。

您的程序是否使用ember cli或ember starter工具包

如果您使用的是Ember cli,则应创建以下文件: app/templates/about.hbs app/controllers/about.js 你也应该在app/router.js中输入一个条目[我想你一定已经这样做了。] router.js中的条目-

Router.map(function() {
  this.route('about');
 });
现在,您的模板/about.hbs应该是-

<h1>About</h1>

<p>I'll write something interesting here</p>

<button {{action 'clickMe'}}>Click me!</button>
import Ember from 'ember';
export default Ember.ObjectController.extend({
actions:{
       clickMe: function() {
      alert('Something something');
    }
  }
});
完成上述所有更改后,在CMD上执行以下命令- 余烬服务器这将启动服务器

如果按照上述模式执行,代码应该可以工作。
命名约定在Ember中非常重要。

您的程序是否使用Ember cli或Ember初学者工具包

如果您使用的是Ember cli,则应创建以下文件: app/templates/about.hbs app/controllers/about.js 你也应该在app/router.js中输入一个条目[我想你一定已经这样做了。] router.js中的条目-

Router.map(function() {
  this.route('about');
 });
现在,您的模板/about.hbs应该是-

<h1>About</h1>

<p>I'll write something interesting here</p>

<button {{action 'clickMe'}}>Click me!</button>
import Ember from 'ember';
export default Ember.ObjectController.extend({
actions:{
       clickMe: function() {
      alert('Something something');
    }
  }
});
完成上述所有更改后,在CMD上执行以下命令- 余烬服务器这将启动服务器

如果按照上述模式执行,代码应该可以工作。
命名约定在Ember中非常重要。

非常重要,文件名应该是about.js,您应该使用es6模块。@Kitler当我第一次创建about控制器时,我将其命名为about.js,尽管我得到了这个错误未捕获的错误:应该在“blogger/controllers/about”中找到:“controller:about”,但得到了“undefined”。您是否忘记导出默认值“在”blogger/controllers/about“内?”“您是否忘记导出?”P很重要,文件名应该是about.js,您应该使用es6模块。@Kitler当我第一次创建about控制器时,我将其命名为about.js,尽管我得到了这个错误未捕获的错误:应该在blogger/controllers/about中找到:'controller:about',但得到了'undefined'。您是否忘记导出默认值“在”blogger/controllers/about“内?”“您是否忘记导出?”我工作得很有魅力。虽然代码非常相似,但Blogger.AboutController改为导出默认值,Thank@Mateusz nowak的工作非常出色。虽然代码非常相似,但Blogger.AboutController更改为导出默认值,谢谢@Mateusz NowakYes,但控制器命名不正确。正如@Kitler提到的6,全局变量已被ES6模块取代。可悲的是,大多数例子都被弃用了。感谢您对此进行调查是的,控制器命名不正确。正如@Kitler提到的6,全局变量已被ES6模块取代。可悲的是,大多数例子都被弃用了。谢谢你调查这件事