赣州市洪水风险预警系统三维版本
guoshilong
2023-02-27 4d8c6dd77427e8e581fda17b6b65ba86bfb7a815
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
 
        /**
         * Returns frozen renderState as well as all of the object literal properties. This function is deep object freeze
         * function ignoring properties named "_applyFunctions".
         *
         * @private
         *
         * @param {Object} renderState
         * @returns {Object} Returns frozen renderState.
         *
         */
        function freezeRenderState(renderState) {
            if (typeof renderState !== 'object' || renderState === null) {
                return renderState;
            }
 
            var propName;
            var propNames = Object.keys(renderState);
 
            for (var i = 0; i < propNames.length; i++) {
                propName = propNames[i];
                if (renderState.hasOwnProperty(propName) && propName !== '_applyFunctions') {
                    renderState[propName] = freezeRenderState(renderState[propName]);
                }
            }
            return Object.freeze(renderState);
        }
export default freezeRenderState;