Javascript 你知道为什么这个按钮不会被触发吗

Javascript 你知道为什么这个按钮不会被触发吗,javascript,reactjs,reactjs-flux,Javascript,Reactjs,Reactjs Flux,我有以下组成部分: var React = require("react"); var CollectionsButtonActions = require("../actions/CollectionsButtonActions"); var CollectionsApp = React.createClass({ getInitialState: function () { return {text: ''}; }, render: funct

我有以下组成部分:

var React = require("react");

var CollectionsButtonActions = require("../actions/CollectionsButtonActions");


var CollectionsApp = React.createClass({
    getInitialState: function () {
        return {text: ''};
    },

    render: function () {
        var that = this;

        var buttonItem = <button
            onClick={this._handleButtonClick}
        >Test</button>;

        return (
            <div className="view">
                <div className="anchor">
                {buttonItem}
                </div>
                <div className="main">
                    <p>You currently don't have any collections set up,
                        <a href="/admin/collections/new">create one</a>
                        .</p>
                    <ul>
                    </ul>
                </div>
            </div>
        )
    },

    _handleButtonClick: function (event) {
        console.log('test');
        //CollectionsButtonActions.loadCollections();
    }
});

module.exports = CollectionsApp;
var React=require(“React”);
var CollectionsButtonActions=需要(../actions/CollectionsButtonActions”);
var CollectionsApp=React.createClass({
getInitialState:函数(){
返回{文本:'};
},
渲染:函数(){
var=这个;
var buttonItem=测试;
返回(
{buttonItem}
您当前没有设置任何集合,

) }, _把手按钮点击:功能(事件){ console.log('test'); //CollectionsButtonActions.loadCollections(); } }); module.exports=CollectionsApp;
出于某种原因,“U handleButtonClick”事件根本没有触发,Iv'e尝试了各种方式包括按钮,但出于某种原因,该按钮只是不想触发它的事件。我可以在Flux-TodoMVC示例应用程序中看到一个类似的示例,它似乎可以工作,但由于上面代码的某些原因,单击事件没有附加到按钮上


有什么想法吗?

这是一个问题,需要在整个应用程序中使用两个不同的参数来调用react

例如,在bundle.js(应用程序的入口点)中,它被这样调用:

var React = require('./node_modules/react/dist/react-with-addons');
但在实际的react组件文件中,它加载了它的短名称,如下所示:

var React = require("react");
我相信这里发生的事情是require将这两个负载视为完全独立的负载(正如它应该的那样),当require(“react”)调用发生在一个更底层的组件中时,它将删除原始的react事件,并在链的更上层设置,因为react库被加载两次。因为React使用它的合成事件,所以事件不在DOM中,所以当React对象在第二次加载时被覆盖时,这些事件将丢失


这是一个愚蠢的人为错误,但很容易犯,希望这能为以后的人省去一点痛苦。

您的react类似乎可以正常工作。看看这把小提琴:是的,把它弄明白了,它很容易被忽视。实际上,我的bundle.js中有一个require call(),我会立即发布答案,因为这可能会给其他人带来一些痛苦。如果你确实需要使用插件进行响应,你可以
require('react/addons')
require('react')
,而不会导致重复的代码。