Skip to content

Commit 06624cf

Browse files
author
liuxinyi12
committed
feat: 新增生命周期函数getDerivedStateFromProps
1 parent 9595adf commit 06624cf

File tree

10 files changed

+773
-20
lines changed

10 files changed

+773
-20
lines changed

karma.conf.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ module.exports = function (config) {
112112
'./node_modules/es5-polyfill/dist/polyfill.js',
113113
'browsers/ie8.js',
114114
'browsers/polyfill.js',
115-
'packages/*/__tests__/**/*spec.js?(x)'
115+
'packages/*/__tests__/**/lifecycle.spec.js?(x)'
116116
],
117117

118118
specReporter: {
@@ -128,7 +128,7 @@ module.exports = function (config) {
128128
// preprocess matching files before serving them to the browser
129129
// available preprocessors: https://npmjs.org/browse/keyword/karma-preprocessor
130130
preprocessors: {
131-
'packages/*/__tests__/**/*spec.js?(x)': ['webpack', 'sourcemap']
131+
'packages/*/__tests__/**/lifecycle.spec.js?(x)': ['webpack', 'sourcemap']
132132
},
133133

134134
// test results reporter to use

packages/nerv-create-class/src/index.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,8 @@ const AUTOBIND_BLACKLIST = {
5252
componentWillMount: 1,
5353
componentDidMount: 1,
5454
componentWillUnmount: 1,
55-
componentDidUnmount: 1
55+
componentDidUnmount: 1,
56+
getDerivedStateFromProps: 1
5657
}
5758

5859
function extend (base, props) {

packages/nerv-redux/package-lock.json

Lines changed: 91 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

packages/nerv-server/src/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -152,6 +152,7 @@ function renderVNodeToString (vnode, parent, context, isSvg?: boolean) {
152152
instance.componentWillMount()
153153
instance.state = instance.getState()
154154
}
155+
155156
const rendered = instance.render()
156157
if (isFunction(instance.getChildContext)) {
157158
context = extend(clone(context), instance.getChildContext())

packages/nerv-shared/src/index.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,7 @@ export interface ComponentLifecycle<P, S> {
106106
): void
107107
componentWillUnmount? (): void
108108
componentDidCatch? (error?): void
109+
getDerivedStateFromProps? (nextProps: Readonly<P>, prevState: Readonly<S>): object | null
109110
}
110111

111112
export interface Refs {

packages/nerv-test-utils/package-lock.json

Lines changed: 0 additions & 13 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)