import React, {
useCallback,
useEffect,
useState,
forwardRef,
useImperativeHandle,
} from 'react';
import { CnNavBar as UICnNavBar, CnBox } from '@cainiaofe/cn-ui-m';
import {
executeEventWithoutJS,
isDesignMode,
makeButtons,
} from '@/common/util/util';
import { ButtonPosition } from '@/type/button-position';
const CnNavBar = forwardRef((props, ref) => {
if (!UICnNavBar) {
return null;
}
const { title, events, _context, componentStyle, right } = props;
const urlParams = _context?.state?.urlParams;
const rightDom = (
{makeButtons({
buttons: right?.map?.((item) => {
return {
...item,
position: ButtonPosition.navBarRightButton,
text: true,
type: 'primary',
};
}),
_context,
state: _context?.state,
recordDataSource: {},
jsParamList: [_context?.state],
})}
);
const onBack = useCallback(() => {
executeEventWithoutJS({
eventType: 'onBack',
events,
_context,
position: ButtonPosition.navBarEvent,
urlParamsDataSource: urlParams,
recordDataSource: {},
jsParamList: [_context?.state],
});
}, []);
return (
);
});
CnNavBar.displayName = 'CnNavBar';
export default CnNavBar;