- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
尝试创建 Flux 存储。当我运行 gulp 并检查我的 index.html 时,出现错误“Uncaught TypeError:监听器必须是函数”
var AppDispatcher = require('../dispatchers/app-dispatcher');
var AppConstants = require('../constants/app-constants');
var assign = require('object-assign');
var EventEmitterProto = require('events').EventEmitter.prototype;
var CHANGE_EVENT = 'CHANGE'; //broadcast this everytime there is a change
var _catalog = [];
var _cartItems = [];
var AppStore = assign(EventEmitterProto, {
emitChange: function(){
this.emit(CHANGE_EVENT)
},
addChangeListener: function(callback){
this.on(CHANGE_EVENT, callback); //<---if I comment this out code runs perfect
},
removeChangeListener: function(callback){
this.removeListener(CHANGE_EVENT, callback)
},
getCart: function(){
return _cartItems
},
getCatalog: function(){
return _catalog
},
getCartTotals: function(){
return _cartTotals()
}
});
module.exports = AppStore;
下面是唯一带有监听器的组件
var React = require('react');
var AppStore = require('../stores/app-store.js');
var RemoveFromCart = require('./app-removefromcart.js'); //this is a component
var Increase = require('./app-increaseitem'); //this is a component
var Decrease = require('./app-decreaseitem'); //this is a component
function cartItems(){
return {items: AppStore.getCart()}
}
var Catalog = React.createClass({
getInitialState:function(){
return cartItems();
},
componentWillMount: function(){
AppStore.addChangeListener(this.onChange)
},
_onChange: function(){
this.setState(cartItems());
},
render: function(){
var total = 0;
var items = this.state.items.map(function(item, i){
var subtotal = item.cost * item.qty;
total += subtotal;
return (
<tr key={i}>
<td><RemoveFromCart /></td>
<td>{item.title}</td>
<td>{item.qty}</td>
<td>
<Increase index={i} />
<Decrease index={i} />
</td>
<td>${subtotal}</td>
</tr>
);
})//end map
return (
<table className="table table-hover">
<thead>
<tr>
<th></th>
<th>Item</th>
<th>Qty</th>
<th></th>
<th>Subtotal</th>
</tr>
</thead>
<tbody>
{items}
</tbody>
<tfoot>
<tr>
<td colSpan="4" className="text-right">Total</td>
</tr>
</tfoot>
</table>
);
}
});
module.exports = Catalog;
请帮忙。这真是让我头疼
最佳答案
你可能需要改变
AppStore.addChangeListener(this._onChange)
componentDidMount 函数的逻辑如下
componentDidMount:function(){
AppStore.addChangeListener(this._onChange)
}
关于javascript - Flux React 吞下,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34139267/
我需要浏览一个文件,然后将捆绑包与另一个文件连接起来。我尝试了下面的 gulp 代码,但它无法正常工作。 当我在 mymodule.js 中进行更改并运行 gulp 时,这些更改会出现在包文件中,但不
尝试创建 Flux 存储。当我运行 gulp 并检查我的 index.html 时,出现错误“Uncaught TypeError:监听器必须是函数” var AppDispatcher = requ
我在提醒自己“关键字”时偶然发现了这篇文章 http://effbot.org/zone/python-with-statement.htm 。我只是有一个小问题,可能是显而易见的问题。文章指出,这“
我正在使用 Oracle 11g(瘦驱动程序)和 Java 6 在 Windows 上的 Tomcat 7 中开发一个应用程序。我正在开发一个页面,让用户验证存储在 Oracle 数据库中的 SQL
除了向每个回调添加 try..catch block 之外,是否有任何方法可以处理从 jQuery 中的 AJAX 回调抛出的异常?在这种情况下不会调用错误函数。 $.ajax( { url:
我已经编写了代码(如下),以便能够将输入字段拖到另一个输入字段上,但似乎可拖动的燕子 input[text].onfocus . 这会导致问题,即所有可拖动的输入字段都被禁用(firefox)并且单击
在 jQuery 中,如果您在 ajax 回调方法中出错,您将收到正确的控制台错误消息和堆栈跟踪。 $.get("https://api.github.com/users/octocat/orgs",
我正在使用 Apache PdfBox 库,我注意到几乎所有东西都会抛出 IOException,考虑到大多数 IOException 实际上应该是非法状态异常,处理起来非常烦人,但似乎 apache
嘿,我是原型(prototype)的新手。问题是 dom:loaded 回调函数中的 javascript 错误不会在 firefox (webconsole/errorconsole/firebug
我有一个文本框,里面有这个: 问题是它吞下了 Tab 而不是跳转到下一个控件。如何捕获文本框的 Tab 键并仍然按 Tab 键顺序保留到下一个控件的 Tab 键?编辑:我也在使用 MVVM 并且 M
我正在尝试让 googletest 在我的 C++ 项目上运行,其中一部分涉及使用 EXPECT_THROW(statement, expected_exception);。我正在使用选择了“Appl
我不明白为什么原型(prototype)会抑制 dom:loaded 事件和 AJAX 处理程序中的错误消息。 给定以下 HTML 片段: Conforming XHTM
我是一名优秀的程序员,十分优秀!