В Javascript вы не можете ссылаться на что-либо, пока оно не определено. Особенно, когда оно определено с помощью let
или const
, которые выдают ошибку, а не просто undefined
. Так почему я могу ссылаться на еще не определенную функцию внутри импортированной функции и использовать ее в моем компоненте без каких-либо проблем? Я использую webpack и babel и предполагаю, что они как-то справляются, но я ничего не могу найти в Интернете.
Пример:
в helpers.js
export const getText = () => getHelloText() // calls `getHelloText` which hasn't been defined yet
const getHelloText = () => 'Hello!'
в component.js
import { getText } from 'helpers.js'
const Component = () => (
<div>
{getText()} // no reference errors
</div>
)