Есть этот проект, в нем кто-то написал компоненты с нестандартными css.
Вот что я видел в нем. Это компонент-оболочка, похожий на Container in Material ui, или просто оболочку div которые просто применяются css.
export const Container = styled.div`
position: relative;
margin: 0 auto;
margin-top: ${p => p.marginTop ? p.theme.spacing[p.marginTop] : 0};
width: 100%;
max-width: ${p => (p.maxWidth && p.theme.screen[p.maxWidth])};
padding: ${p => p.padding ? `0 ${p.theme.spacing[p.padding]}` : `0 ${p.theme.spacing.sm}`};
z-index: ${p => p.zIndex && p.theme.zIndex[p.zIndex]};
background-color: ${p => p.color && p.theme.colors[p.color]};
border-radius: ${p => p.radius && p.theme.radius[p.radius]};
`;
, но я не понимаю p.marginTop, p.theme и все остальные
, но теперь я хочу просто преобразовать это в простую оболочку div и присвойте ей свойство стиля материала ui way.
что-то вроде этого
const useStyles = makeStyles((theme) => ({
container: {
position: 'relative',
margin: '0 auto',
// margin-top: ${p => p.marginTop ? p.theme.spacing[p.marginTop] : 0},
width: '100%',
// max-width: ${p => (p.maxWidth && p.theme.screen[p.maxWidth])},
// padding: ${p => p.padding ? `0 ${p.theme.spacing[p.padding]}` : `0 ${p.theme.spacing.sm}`},
padding: themeIntance.spacing.sm,
// z-index: ${p => p.zIndex && p.theme.zIndex[p.zIndex]},
// background-color: ${p => p.color && p.theme.colors[p.color]},
// border-radius: ${p => p.radius && p.theme.radius[p.radius]},
}
}))
, но все прокомментированные в нем строки показывали ошибки, говоря, что это не признание p.
(ранее те вещи p.theme, я нашел работу, там был файл темы. js, откуда я мог импортировать все p.theme.spacing.sm, но Я не понимаю, что такое p.padding или p.maxWidth)
Пожалуйста, помогите мне разобраться в этом.