В чем смысл префикса имен функций с помощью "_" React/React-native?

Итак, согласно соглашению, поскольку JavaScript не имеет модификаторов доступа, я должен префикс "private" имен функций с подчеркиванием (_). Но я немного запутался здесь, говорю, что я пишу класс на С++ или Java, который имеет две функции, которые выполняют внутренние вычисления, а второй - возвращает результат этого внутреннего вычисления.

Итак, у меня есть эти две функции

performInternalSecretCalculation();
getResult();

performInternalSecretCalculation() должен быть закрытым, так как я не хочу, чтобы другие классы беспокоились о том, как класс обрабатывает вычисления и, следовательно, я не экспортирую эту функцию. В то время как getResult() - это то, что будет использоваться другими классами, и, следовательно, я делаю его общедоступным и экспортирую эту функцию.

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

Ответ 1

Это просто соглашение об именах, используемое некоторыми разработчиками для внутренних методов, чтобы отделить их от методов жизненного цикла.

Методы жизненного цикла

  • Конструктор
  • getChildContext
  • componentWillMount
  • componentDidMount
  • componentWillReceiveProps
  • shouldComponentUpdate
  • componentWillUpdate
  • componentDidUpdate
  • componentWillUnmount

Список заимствован из Руководство по стилю AirBnB.

Руководство по стилю Airbnb React/JSX

Я предпочитаю Руководство по стилю из AirBnB. Они предлагают не использовать префикс подчеркивания. Я применяю вместо этого чистый порядок для методов.