Объявление функций и переменных в React - PullRequest
1 голос
/ 16 июня 2020

Я создаю большое приложение React, которое включает в себя обработку большого количества данных, их форматирование и вывод в таблицы. Иногда эти функции являются переменными (например, const x = () => et c.)

Я сохраняю функции, выполняющие это форматирование, в файлах Typescript, которые я импортирую в свои компоненты React.

В качестве примера я мог бы написать функцию форматирования таблицы следующим образом:

export const buildMainData = (data: any) => {
  do stuff
}

Я помещаю ее в файл с именем functions.ts (например).

Затем у меня есть компонент React, который использует эту функцию.

Мой вопрос - это плохая идея? Я создаю множество функций, загрязняющих кучу памяти? Я использую приложение create-react-app, поэтому я не уверен, что Webpack делает какие-то магические c за кулисами, чтобы предотвратить глобальные переменные, или все, что я пишу, должно быть помещено внутри компонентов React.

Было бы здорово, если бы кто-нибудь с большим опытом / знаниями в этой области мог бы помочь. Было бы полезно знать, если я полностью ошибся концом палки. Спасибо.

1 Ответ

1 голос
/ 16 июня 2020

Переменные и функции, которые вы экспортируете, не являются глобальными , они экспортируются из модуля, в котором вы их определяете. Они используются через импорт. Если у вас есть такие, которые не используются, современные пакеты, такие как Webpack и Rollup, могут встряхнуть пакет, который они создают, оставляя неиспользуемые функции (если они есть). Подробнее о встряхивании деревьев в Webpack и в Rollup. js.

Это правда, что объявления верхнего уровня в сценариях classi c являются глобальными, но Объявления верхнего уровня в модулях привязаны к модулю (вроде как модуль был функцией, и вы объявляли что-то внутри него), а затем, возможно, экспортируются из него.

...