Oto kod,JS deklaracja funkcji: kręcone obiekt klamra przypisany pustego obiektu w deklaracji parametru
export function createConnect({
connectHOC = connectAdvanced,
mapStateToPropsFactories = defaultMapStateToPropsFactories,
mapDispatchToPropsFactories = defaultMapDispatchToPropsFactories,
mergePropsFactories = defaultMergePropsFactories,
selectorFactory = defaultSelectorFactory
} = {}) {...}
Co {connectHOC = connectAdvanced ...} = {} oznacza, wewnątrz deklaracji parametru funkcja?
wiem, że
= {}
może oznaczać domyślną wartość parametru funkcji, ale co jest użycie kodu wewnątrz poprzednich szelki?
Nie jestem do końca pewien, ale, ale pierwsza część ('{connectHOC = ......... = defaultSelectorFactory}') nie jest obiektem, jest to blok z kilku deklaracji zmiennych . Obiekt używałby dwukropków, a nie znaków równych. –
Jest to kombinacja wartości domyślnych dla parametrów i destrukturyzacji. Zaskoczeni nie wydajemy się, aby pytanie dotyczyło obu tych osób w tym samym czasie na SO, albo to, albo moje google zawodzi mnie tym razem. –
[To jest blisko] (http: // stackoverflow.com/questions/26578167/es6-object-destructuring-default-parameters), ale nie do końca dupe. [Również to] (http://stackoverflow.com/questions/34275971/how-to-destructure-option-argument-with-all-default-values-ines6). Oboje wyjaśniają, co tu się dzieje, ale z punktu widzenia PO wiedząc, że chcą przypisać wartości domyślne do zniszczonych parametrów, a nie "jaka jest ta składnia". –