Redux中的初始化代码是什么?
这是一些代码已经在回购我的工作。似乎正在声明jQuery全局。根据注释,垃圾收集需要什么Redux中的初始化代码是什么?,redux,Redux,这是一些代码已经在回购我的工作。似乎正在声明jQuery全局。根据注释,垃圾收集需要什么 // Initialize application global.$ = $ $.ajaxSetup({cache: false}) $.ajaxPrefilter(function (options) { }) // Grab the state from a global variable injected into the server-generated HTML const preloadedS
// 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__
总而言之,我认为它正在设置jquery如何处理ajax请求,然后从服务器呈现状态中获取一个值。然后,它将处理该状态,因为它不再需要
首先,将
global.$
设置为此上下文中的任何$
。根据下一行,我们可以假设它是jquery
global.$ = $
将jquery设置为对所有ajax调用使用默认值:
$.ajaxSetup({cache: false})
老实说,我不认为这句话有什么用:
$.ajaxPrefilter(function (options) {
})
从窗口获取状态。\uuuu APP\u INITIAL\u state\uuuu
。通常在服务器端渲染时会看到这种情况
const preloadedState = window.__APP_INITIAL_STATE__
基于预加载状态的webSocketURL
设置全局变量
global.webSocketURL = preloadedState.webSocketURL
我们可以假定初始状态(可能是在服务器端呈现的)不再需要,现在可以删除:
delete window.__APP_INITIAL_STATE__
谢谢你的解释。由于应用程序不涉及SSR,因此假设此块可以消除是一样的吗?依我看,这似乎并没有真正起到任何作用。你知道应用程序是否使用jquery的ajax调用吗?您能找到使用了
global.webSocketUrl
的任何地方吗?其他地方没有使用。API调用是由axios处理的。那么我想说你至少可以尝试删除它,很难看出这些代码会对应用程序产生什么影响