chrome.identity для расширения хрома? У меня непонятная проблема:
componentDidMount () {
// development mode with pre-login
if (process.env.NODE_ENV === 'production') {
chrome.identity.getAuthToken({ interactive: true }, async function (token) {
if (chrome.runtime.lastError) {
return;
}
const data = await axios.get('https://www.googleapis.com/oauth2/v1/userinfo?alt=json&access_token=' + token).then(({ data }) => data);
const credentals = {
full_name: data.name,
email: data.email,
google_id: data.id,
remote_avatar_url: data.picture
};
console.log(credentals);
this.setState(credentals);
});
}
}
вроде все норм - консоль выводит нужные данные нужным объектом. Но при этом ругается на this.setState is not a function. Как можно это обойти?
а ты уверен, что process.env у тебя корректно отработает в браузере?
Ты видимо теряешь this при асинхронной функции async function (token)
Обсуждают сегодня