作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试加载 Google 客户端库以在我的 Meteor 应用程序中使用 Google 日历,但我的回调 (onload=handleClientLoad
) 函数没有执行。从简单的 HTML +JavaScript 应用程序使用时也是如此。我还在 Google 授权网址中注册了我的 Meteor 应用程序网址 localhost:3000
。
Template.hello.events({
'click button': function () {
callGoogle();
}
});
function callGoogle() {
jQuery.ajax({
url: 'https://apis.google.com/js/client.js?onload=handleClientLoad',
dataType: 'script',
success: function () {
console.log("Success");
},
error: function (e) {
console.log("Error")
},
async: true
});
return false;
}
//This function is not executing
function handleClientLoad() {
console.log("handleClientLoad");
gapi.client.setApiKey(apiKey);
window.setTimeout(checkAuth, 2);
}
function checkAuth() {
gapi.auth.authorize({
client_id: clientId,
scope: scopes,
immediate: false
}, handleAuthResult);
}
function handleAuthResult(authResult) {
console.log("authResult", authResult);
if (authResult && !authResult.error) {
gapi.client.load('calendar', 'v3', listUpcomingEvents);
}
}
function listUpcomingEvents() {
var request = gapi.client.calendar.events.list({
'calendarId': 'primary',
'timeMin': (new Date()).toISOString(),
'showDeleted': false,
'singleEvents': true,
'maxResults': 10,
'orderBy': 'startTime'
});
最佳答案
您需要将函数导出到全局范围:
handleClientLoad = function() {
console.log("handleClientLoad");
gapi.client.setApiKey(apiKey);
window.setTimeout(checkAuth, 2);
};
关于javascript - 在 Meteor 中加载 Google JavaScript 客户端库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34157354/
我是一名优秀的程序员,十分优秀!