我有以下应用程序代码:
'use strict';
//function to handle gapi initialization
var init = function() {
//load plus api
gapi.client.load('plus' , 'v1' , function() {
gapi.isReady = true;
});
}
window.init = init;
var React = require('React'),
aapi = require('./components/alonso-api'),
BlogList = require('./components/blog-list'),
ActivityBox = require('./components/activity-box'),
GoogleSignin = require('./components/google-signin');
if (!window.React) {
window.React = React;
}
React.render(<BlogList data={aapi.blogs.read()} /> , document.getElementById('blog-list'));
React.render(<ActivityBox data={aapi.blogs.read({
offset : 0,
limit : 3
})} /> , document.getElementById('activity-box'));
React.render(<GoogleSignin clientId='client-id' scope='https://www.googleapis.com/auth/userinfo.email'/> , document.getElementById('google-signin'));
正确显示所有React元素,但未触发GoogleSignin
的{{1}}事件。以下是onClick
定义:
GoogleSignin
我在没有Browserify的情况下运行相同的代码并且正在正确处理var React = require('react'),
window = window || {},
gapi = window.gapi || {};
var GoogleSignin = React.createClass({
handleClick : function(e) {
console.log('click!');
},
render : function() {
return (
<div className="googleSignin">
<button className="btn btn-default" onClick={this.handleClick}><i className="fa fa-google-plus"></i> Sign in</button>
</div>
);
}
});
module.exports = GoogleSignin;
处理程序,所以我不确定我错过了什么。