Пакет - реагировать-Google-календарь-API
Я пытаюсь следовать простому примеру, чтобы войти в систему с помощью Google:
import React, {ReactNode, SyntheticEvent} from 'react';
import ApiCalendar from 'react-google-calendar-api';
export default class Calendar extends React.Component {
constructor(props) {
super(props);
this.handleItemClick = this.handleItemClick.bind(this);
}
handleItemClick(event, name) {
if (name === 'sign-in') {
ApiCalendar.handleAuthClick();
} else if (name === 'sign-out') {
ApiCalendar.handleSignoutClick();
}
}
render() {
return (
<div>
<button
onClick = {(e) => this.handleItemClick(e, 'sign-in').bind(this)}
>
sign-in
</button>
<button
onClick = {(e) => this.handleItemClick(e, 'sign-out').bind(this)}
>
sign-out
</button>
</div>
);
}
}
Мое приложение Meteor не запускается

Я думаю, нет смысла пытаться получить доступ к документу или окну из внешней библиотеки. Возможно, мне здесь не хватает какой-то концепции React / Javascript.
Я это уже пробовал. Та же ошибка. Но спасибо
Похоже, что lib ожидает запуска в браузере. Я не очень хорошо знаю Meteor, но вы пытаетесь рендерить на стороне сервера?
Установленный компонент находится на стороне клиента. Я могу запустить, например, jQuery внутри любого компонента. Итак, я не знаю, что происходит ...
Вы уверены, что ваш код работает в браузере? Такая ошибка консоли пришла с сервера, а Meteor не передает ошибки от клиента к серверу? Каков путь к этому файлу в вашем проекте и откуда он?





Попробуйте удалить привязку ваших обработчиков внутри кнопок, чтобы
onClick = {(e) => this.handleItemClick(e, 'sign-in').bind(this)}превратился вonClick = {e => this.handleItemClick(e, 'sign-in')}. Не уверен, что это решит вашу проблему, но в этом нет необходимости, поскольку вы связали их в своем конструкторе. Возможно, что, привязывая их снова, поскольку вы создаете курьерскую функцию (надеюсь, я правильно использую этот термин), вы привязываете их к самой функции onClick, а не к компоненту. Но помимо этого я не знаю, что тебе сказать