MCPcopy
hub / github.com/baidu/amis / componentDidUpdate

Method componentDidUpdate

packages/amis/src/renderers/Cards.tsx:322–365  ·  view source on GitHub ↗
(prevProps: GridProps)

Source from the content-addressed store, hash-verified

320 }
321
322 componentDidUpdate(prevProps: GridProps) {
323 const props = this.props;
324 const store = props.store;
325
326 if (
327 anyChanged(
328 [
329 'selectable',
330 'draggable',
331 'orderBy',
332 'orderDir',
333 'multiple',
334 'hideCheckToggler',
335 'itemCheckableOn',
336 'itemDraggableOn'
337 ],
338 prevProps,
339 props
340 )
341 ) {
342 store.update({
343 selectable: props.selectable,
344 draggable: props.draggable,
345 orderBy: props.orderBy,
346 orderDir: props.orderDir,
347 multiple: props.multiple,
348 hideCheckToggler: props.hideCheckToggler,
349 itemCheckableOn: props.itemCheckableOn,
350 itemDraggableOn: props.itemDraggableOn
351 });
352 }
353
354 if (
355 anyChanged(['source', 'value', 'items'], prevProps, props) ||
356 (!props.value &&
357 !props.items &&
358 (props.data !== prevProps.data ||
359 (typeof props.source === 'string' && isPureVariable(props.source))))
360 ) {
361 Cards.syncItems(store, props, prevProps) && this.syncSelected();
362 } else if (prevProps.selected !== props.selected) {
363 store.updateSelected(props.selected || [], props.valueField);
364 }
365 }
366
367 bodyRef(ref: HTMLDivElement) {
368 this.body = ref;

Callers

nothing calls this directly

Calls 4

syncSelectedMethod · 0.95
anyChangedFunction · 0.90
isPureVariableFunction · 0.90
syncItemsMethod · 0.45

Tested by

no test coverage detected