Стили не вводятся через реквизиты в материале -компонент пользовательского интерфейса typescript в react native

#css #reactjs #typescript #react-native #material-ui

#css #reactjs #typescript #react-native #материал-пользовательский интерфейс

Вопрос:

 import {createStyles, WithStyles} from "@material-ui/core";

const styles = (theme: Theme) => createStyles({
    root: {}
});

interface MyProps extends WithStyles<typeof styles> {
}

export class MyComponent extends Component<MyProps> {

    constructor(props: MyProps) { 
        super(props);
        console.log(props.classes); // why this is undefined? 
    }
}
  

Почему props.classes не определено?

Комментарии:

1. Кажется, вы не отправляли классы props в MyComponent

2. @NooruddinLakhani итак, как мне их отправить?

3. Спасибо @NooruddinLakhani, но я хочу использовать стили const в классе component

4. оформить заказ таким образом malcoded.com/posts/react-component-style

Ответ №1:

Вы можете отправлять реквизиты компоненту, например, куда вы звоните

 <MyComponent classes={.. Any thing you want to pass here ...} />
  

Ответ №2:

Наконец-то это заработало, «украсив» мой класс следующим образом

 export const MyComponent = withStyles(styles)(
    class extends Component<MyProps> {
      ...
    }
)
  

Затем вы можете использовать стили, подобные этому

 <div className={this.props.classes.root}>