Доступ к контексту React из обычной функции - PullRequest
0 голосов
/ 08 февраля 2019

Можно ли получить доступ к контексту React из вспомогательной функции, не относящейся к React?

Например, у меня есть поставщик контекста, который сохраняет корневую ветку для страницы изучения конкретного случая при загрузке приложения.Затем мне нужно создать URL-адреса, используя поставщика контекста в разных местах моего приложения.Поэтому я создал вспомогательную функцию для этого:

components / caseStudies / index.jsx

import getCaseStudyPath from '../../lib/helpers/getCaseStudyPath';

const CaseStudies = ({ caseStudy }) => {
  // caseStudy.slug === 'test-case-study'
  const caseStudyPath = getCaseStudyPath(caseStudy.slug);

  return (
    <a href={caseStudyPath}>Test</a>
  );
};

lib / helpers / getCaseStudySlug

export default (slug) => {
  // Get caseStudyRootSlug from React context
  return `/${caseStudyRootSlug}/${slug}`;
  // For example, this returns '/case-studies/test-case-study'
};

Я знаю, что могу просто использовать провайдер контекста в моем компоненте React или даже как HOC, и просто передать значение вспомогательной функции, но мне нужно использовать эту вспомогательную функцию на протяжении всего моегоприложение и не нужно тратить время на настройку потребителя каждый раз, когда я хочу его использовать.

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