Что это за код инициализации в Redux? - PullRequest
0 голосов
/ 11 сентября 2018

Это был какой-то код, уже работающий в репо.Похоже, объявлен глобальный jQuery. По комментариям, что нужно для сборки мусора?

// Initialize application
global.$ = $
$.ajaxSetup({cache: false})
$.ajaxPrefilter(function (options) {
})

// Grab the state from a global variable injected into the server-generated HTML
const preloadedState = window.__APP_INITIAL_STATE__
global.webSocketURL = preloadedState.webSocketURL

// Allow the passed state to be garbage-collected
delete window.__APP_INITIAL_STATE__

1 Ответ

0 голосов
/ 11 сентября 2018

Подводя итог, я думаю, что он устанавливает, как jquery будет обрабатывать запросы ajax, а затем он принимает значение из состояния рендеринга сервера.Затем он избавляется от этого состояния, поскольку оно больше не требуется.


Сначала установите global.$ на значение, равное $ в этом контексте.Мы можем предположить, что это jquery, основываясь на следующей строке.

global.$ = $

Настройка jquery для использования значений по умолчанию для всех вызовов ajax:

$.ajaxSetup({cache: false})

Я не думаю, что эта строка что-то делает,если честно:

$.ajaxPrefilter(function (options) {
})

Получите состояние от window.__APP_INITIAL_STATE__.Обычно вы видите это, когда происходит рендеринг на стороне сервера.

const preloadedState = window.__APP_INITIAL_STATE__

Установите глобальную переменную на основе webSocketURL из предварительно загруженного состояния

global.webSocketURL = preloadedState.webSocketURL

Мы можем предположить, чтоначальное состояние (которое предположительно отображалось на стороне сервера) больше не требуется и теперь может быть удалено:

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