nastya_zholudeva
@nastya_zholudeva

Не работают функции getApiToken() и setApiToken(token). В чем причина?

Нужно написать функцию getApiToken() которая будет возвращать токен из свойства api_token. И также функцию setApiToken(token) которая будет в api_token прописывать новый токен после успешной авторизации и также записывать его в localStorage. Что не верно в моем коде?
let api_config = {
  api_url: API_HOST + 'api/',
  api_token: ''
}

function setApiToken(token) {
  console.log('token', token)
  api_config.api_token = token
  localStorage.setItem('token', token)
  return localStorage.setItem('token', token)
}

function getApiToken() {
  console.log('api_config.api_token', api_config.api_token)
  return api_config.api_token
}

export default {api_config, setApiToken, getApiToken}


Потом я вызываю функцию
headers: {
      Authorization: 'Bearer ' + getApiToken.api_config.api_token
    }


А setApiToken(response.data.token)
По клику на кнопку залогиниться.
Использую axios, vue.js
  • Вопрос задан
  • 108 просмотров
Решения вопроса 1
Vlad_IT
@Vlad_IT Куратор тега JavaScript
Front-end разработчик
nastya_zholudeva, видимо у вас импорт вот так выглядит
import getApiToken from './file'
В таком случае он импортирует все из export default {api_config, setApiToken, getApiToken}
Пишите так
import { getApiToken } from './file'

И уберите default в экспорте
export {api_config, setApiToken, getApiToken}
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
miraage
@miraage
Старый прогер

Потом я вызываю функцию
headers: {
      Authorization: 'Bearer ' + getApiToken.api_config.api_token
    }



Не вижу тут вызова функциии. Может быть просто Authorization: 'Bearer ' + getApiToken() хотели написать?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы