Skip to content

Commit bc337bc

Browse files
committed
prevent muiltple extend in getComponent
1 parent 4ea4a54 commit bc337bc

2 files changed

Lines changed: 7 additions & 3 deletions

File tree

packages/webpack-plugin/lib/runtime/optionProcessor.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,9 @@ registered in parent context!`)
108108
export function getComponent (component, extendOptions) {
109109
component = component.__esModule ? component.default : component
110110
// eslint-disable-next-line
111-
if (extendOptions) extend(component, extendOptions)
111+
if (extendOptions && !component.__mpxExtended) {
112+
extend(component, extendOptions, { __mpxExtended: true })
113+
}
112114
return component
113115
}
114116

packages/webpack-plugin/lib/runtime/optionProcessorReact.js

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,9 @@ import { extend } from './utils'
55
export function getComponent (component, extendOptions) {
66
component = component.__esModule ? component.default : component
77
// eslint-disable-next-line
8-
if (extendOptions) Object.assign(component, extendOptions)
8+
if (extendOptions && !component.__mpxExtended) {
9+
extend(component, extendOptions, { __mpxExtended: true })
10+
}
911
return component
1012
}
1113

@@ -15,7 +17,7 @@ export function getAsyncSuspense (commonProps) {
1517
result = memo(forwardRef(function (props, ref) {
1618
return createElement(AsyncSuspense,
1719
extend({}, commonProps, {
18-
innerProps: Object.assign({}, props, { ref })
20+
innerProps: extend({}, props, { ref })
1921
})
2022
)
2123
}))

0 commit comments

Comments
 (0)