我在我的应用程序中有MUI警报框。我需要更改内部消息与href URL。当我设置它显示为文本的herf
标记时,我想将其显示为链接。
从吹代码,当我点击按钮,它显示href作为文本。我可以知道如何显示它作为html链接?
import * as React from 'react';
import { useState } from 'react';
import Stack from '@mui/material/Stack';
import Button from '@mui/material/Button';
import { Alert} from '@mui/material';
import Typography from '@mui/material/Typography';
export default function BasicAlerts() {
const [message, setMessage] = useState('Form Loaded');
// function to handle the click event on the link
const handleLinkClick = () => {
console.log("inside function")
var u='<a href="https://www.google.com">Visit Google</a>'
setMessage("changed : " +u)
};
return (
<Stack sx={{ width: '100%' }} spacing={2}>
<Alert variant="outlined" severity="info">
This is an info alert — check it out!
<Typography>
<br/>
{message}{' '}
<br/>
</Typography>
</Alert>
<Button onClick={handleLinkClick}>Change</Button>
</Stack>
);
}
1条答案
按热度按时间bvjveswy1#
你的状态实际上是一个字符串,在你的点击事件中,你的
setMessage("changed : " +u)
输出也是一个字符串。所以你的锚点html在<Typography />
标签下变成了一个普通的文本。您可以通过click事件设置
href
,并根据href将输出显示为普通typgraphy
或锚点link
。例如: