2017-07-29 1 views
0

Wie kann ich meinen Text mit <Typography /> formatieren? Ist es möglich, so etwas zu tun:Verschachteltes Styling innerhalb der Typografie

const someText = 'Hello <b>World</b>'; 

... 
    <Typography> 
    {someText} 
    </Typography> 
... 

Oder muss ich meinen Text teilen? Mit geschachtelten Typografien scheinen mir einige Layoutprobleme zu bestehen.

Antwort

0

I Verwendung eines benutzerdefinierten Stils wie diese schließlich gemacht:

const styleSheet = createStyleSheet('SomeComponent', (theme) => ({ 
    root: { 
    }, 
... 
    body2Bold: { 
    fontFamily: theme.typography.body2.fontFamily, 
    fontSize: theme.typography.body2.fontSize, 
    fontWeight: 'bold', 
    }, 
})); 

Und dann in meiner Render-Funktion:

const { Hello, World, classes } = this.props; 
... 
    <Typography type="body2" color="default"> 
     {Hello} 
     <span className={classes.body2Bold}> 
      &nbsp;{World} 
     </span>. 
    </Typography> 
... 

Der Nachteil ist, dass ich etwas Text in verschiedene Variablen aufteilen muss.

0

Verwendung dangerouslysetinnerhtml zum Einfügen von rohem HTML, sonst wird Styling nicht funktioniert

+0

Ja, das könnte eine Option sein, aber die XSS-Angriffs-Exposition ist ein bisschen riskant, da ich keinen Code habe, um die von meinem Backend-API zurückgegebenen Daten zu 'säubern'. –