169 похожих чатов

Привет! Эксперт по перформансу найдись Сейчас Mount time 18ms, мне

нужно выжать максимум. Что выпилить, что бы стало гарантированно быстрее? Испльзуем jss, material-ui
https://take.ms/NFOEl

const styles = theme => ({
button: {
textTransform: 'none',
minWidth: 0,
minHeight: 0,
paddingTop: 0,
paddingLeft: (theme.spacing.unit / 2) + (theme.spacing.unit / 4),
paddingRight: (theme.spacing.unit / 2) + (theme.spacing.unit / 4),
paddingBottom: 0,
fontWeight: 500,
color: gray[500],
height: 24,
fontSize: 12,
pointerEvents: 'auto !important'
},
icon: {
color: grey[500],
fontSize: '15px'
},
text: {
maxWidth: 100,
whiteSpace: 'nowrap',
overflow: 'hidden',
textOverflow: 'ellipsis',
fontSize: '0.75rem',
fontFamily: '"Roboto", "Helvetica", "Arial", sans-serif',
fontWeight: 400,
lineHeight: 1.66,
letterSpacing: '0.03333em'
}
});

// eslint-disable-next-line
class Size extends Component {
static propTypes = {
isCompact: PropTypes.bool,
isDisabled: PropTypes.bool,
cardId: PropTypes.number.isRequired,
classes: PropTypes.object.isRequired,
text: PropTypes.string.isRequired,
isPopoverOpen: PropTypes.bool.isRequired,
onPopoverClose: PropTypes.func.isRequired,
onPopoverOpen: PropTypes.func.isRequired,
anchorEl: PropTypes.any,
className: PropTypes.string,
iconClassName: PropTypes.string
};

static defaultProps = {
anchorEl: null,
isDisabled: false,
isCompact: false,
className: '',
iconClassName: '',
classes: {}
};

handleSave = (sizeText) => {
const { cardId, onPopoverClose } = this.props;

onPopoverClose();

store.dispatch(saveCard(cardId, { size_text: sizeText }))
.catch((error) => {
showRequestError(error);
captureException(error);
});
}

render () {
const {
classes, className,
text, isCompact, isPopoverOpen, anchorEl,
onPopoverClose, onPopoverOpen, isDisabled,
iconClassName
} = this.props;

return (
<Fragment>
<Button
onClick={isDisabled ? _.noop : onPopoverOpen}
className={cn(classes.button, className)}
>
<FlashOnIcon
fontSize="small"
className={cn(classes.icon, iconClassName)}
/>
<If condition={!isCompact}>
<div className={classes.text}>{text}</div>
</If>
</Button>
<If condition={!isDisabled && isPopoverOpen}>
<CardEstimatePopover
anchorEl={anchorEl}
isPopoverOpen={isPopoverOpen}
value={text}
onPopoverClose={onPopoverClose}
onSave={this.handleSave}
/>
</If>
</Fragment>
);
}
}

export default compose(
React.memo,
withStyles(styles),
withPopoverToggler
)(Size);

2 ответов

7 просмотров

18ms это наверное в dev?

не юзай матириал, не юзай рантайм стили

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта