Ошибка типа: ожидаемый параметр accessToken в реакции Js - PullRequest
0 голосов
/ 08 ноября 2019

Снимок экрана с ошибкой:

При запуске проекта реакции по npm start отображается ошибка, связанная с contentful.js. почему пакет показывает эти типы ошибок? Я прикрепил скриншот с этим постом. Как решить эту проблему?

.env file

CONTENTFUL_ACCESS_TOKEN: process.env.REACT_APP_CONTENTFUL_ACCESS_TOKEN,

config file

import SETTINGS from "../env";
const contentfulClient = contentful.createClient({
  space: SETTINGS.CONTENTFUL_SPACE,
  accessToken: SETTINGS.CONTENTFUL_ACCESS_TOKEN
});

Нужно ли вводить где-нибудь токен api?

.env

const SETTINGS = {
  LANDING_BLOG_POSTS: "",
  ICON_TYPE: "svg",
  CONTENTFUL_SPACE: process.env.REACT_APP_CONTENTFUL_SPACE,
  CONTENTFUL_ACCESS_TOKEN: process.env.REACT_APP_CONTENTFUL_ACCESS_TOKEN,
  CLOUDINARY_UNSIGNED_PRESET: process.env.REACT_APP_CLOUDINARY_UNSIGNED_PRESET,
  CLOUDINARY_CLOUD_NAME: process.env.REACT_APP_CLOUDINARY_CLOUD_NAME,
  SERVER_7CHIP: process.env.REACT_APP_SERVER_7HIP || false,
    HARD_CODED_USERNAME: process.env.REACT_APP_TOKEN_USERNAME || "**********",
  HARD_CODED_PASSWORD: process.env.REACT_APP_TOKEN_PASSWORD || "************",
  FACEBOOK_API_ID: process.env.REACT_APP_FACEBOOK_APP_ID,
  FACEBOOK_PAGE_TOKEN: process.env.REACT_APP_FACEBOOK_PAGE_TOKEN,
  FACEBOOK_PAGE_ID: process.env.REACT_APP_FACEBOOK_PAGE_ID || "**************",
  FACEBOOK_SERVER_CALL: true
};
export default  SETTINGS;

1 Ответ

0 голосов
/ 09 ноября 2019

Поскольку ваш код дошел до функции createClient, это говорит о том, что ваш объект SETTINGS загружается (в противном случае вы получите TypeError из accessToken: SETTINGS.CONTENTFUL_ACCESS_TOKEN). Однако в сообщении об ошибке говорится, что accessToken не предоставлено.

Поэтому SETTINGS.CONTENTFUL_ACCESS_TOKEN - это undefined, null или пустая строка. Поскольку это значение установлено на process.env.REACT_APP_CONTENTFUL_ACCESS_TOKEN, это, вероятно, означает, что вы не установили переменную окружения REACT_APP_CONTENTFUL_ACCESS_TOKEN до запуска программы.

Попробуйте установить для этой переменной среды значение токена доступа, затем запустите программу.

Если это сработает, вы можете пересмотреть подход. У вас есть файл "env", но вы получаете значения из системных переменных окружения. Обычно у вас есть файл "env", так что вы можете жестко закодировать в него значения, а не полагаться на их внешнюю установку. Если они должны быть установлены внешне, вы также можете не использовать файл "env" и просто использовать process.env.VARIABLE_NAME непосредственно в своем коде.

Обратите внимание, что если вы жестко закодировали доступ к токенам или другой частной информации в "env""файл, вы должны добавить этот файл в .gitignore, чтобы пароли / ключи не сохранялись в git.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...