如何使用<Typography />
设置文字样式?有可能做这样的事情:
const someText = 'Hello <b>World</b>';
...
<Typography>
{someText}
</Typography>
...
或者我需要拆分我的文字吗?使用嵌套的Typographies,我似乎有一些布局问题。
答案 0 :(得分:1)
我终于使用了这样的自定义样式:
namespace App\Listeners;
use Illuminate\Auth\Events\Login;
use Illuminate\Http\Request;
class LogSuccessfulLogin
{
/**
* Create the event listener.
*
* @param Request $request
* @return void
*/
public function __construct(Request $request)
{
$this->request = $request;
}
/**
* Handle the event.
*
* @param Login $event
* @return void
*/
public function handle(Login $event)
{
$user = $event->user;
$user->last_login_at = date('Y-m-d H:i:s');
$user->last_login_ip = $this->request->ip();
$user->save();
}
}
然后在我的渲染功能中:
const styleSheet = createStyleSheet('SomeComponent', (theme) => ({
root: {
},
...
body2Bold: {
fontFamily: theme.typography.body2.fontFamily,
fontSize: theme.typography.body2.fontSize,
fontWeight: 'bold',
},
}));
缺点是我需要将一些文本分解为不同的变量。
答案 1 :(得分:0)
使用dangerouslysetinnerhtml插入原始HTML,否则样式将无法正常工作
答案 2 :(得分:0)
我正在使用material-ui 4. *,这样做是完全合法的。
<Typography variant={'h5'} >Treffen Sie auf der it-sa 2019 die Micro Focus
<Typography display={'inline'} >und diskutieren Sie über </Typography>
</Typography>
答案 3 :(得分:0)
您可以使用Box Component
它接受属性fontWeight
和display
,如下所示:
<Typography component="div">
This is normal text <Box display="inline" fontWeight="fontWeightBold">this is bold</Box>
</Typography>
注意:请确保将
component="div"
添加到Typography
中,否则会出现以下错误:
<div>
不能作为<p>
的后代
这里是codesandbox