Alert 提示
用于页面中展示重要的提示信息。
基础用法
Alert 组件不属于浮层元素,不会自动消失或关闭。
Alert 组件提供四种类型,由 type
属性指定,默认值为 info
。
<template>
<el-alert title="success alert" type="success" />
<el-alert title="info alert" type="info" />
<el-alert title="warning alert" type="warning" />
<el-alert title="error alert" type="error" />
</template>
<style scoped>
.el-alert {
margin: 20px 0 0;
}
.el-alert:first-child {
margin: 0;
}
</style>
主题
Alert 组件提供了两个不同的主题:light
和dark
。
通过设置effect
属性来改变主题,默认为light
。
<template>
<el-alert title="success alert" type="success" effect="dark" />
<el-alert title="info alert" type="info" effect="dark" />
<el-alert title="warning alert" type="warning" effect="dark" />
<el-alert title="error alert" type="error" effect="dark" />
</template>
<style scoped>
.el-alert {
margin: 20px 0 0;
}
.el-alert:first-child {
margin: 0;
}
</style>
自定义关闭按钮
你可以自定义关闭按钮为文字或其他符号。
你可以设置 Alert 组件是否为可关闭状态, 关闭按钮的内容以及关闭时的回调函数同样可以定制。 closable
属性决定 Alert 组件是否可关闭, 该属性接受一个 Boolean
,默认为 false
。 你可以设置 close-text
属性来代替右侧的关闭图标, 需要注意的是 close-text
必须是一个字符串。 当 Alert 组件被关闭时会触发 close
事件。
<template>
<el-alert title="unclosable alert" type="success" :closable="false" />
<el-alert title="customized close-text" type="info" close-text="Gotcha" />
<el-alert title="alert with callback" type="warning" @close="hello" />
</template>
<script lang="ts" setup>
const hello = () => {
// eslint-disable-next-line no-alert
alert('Hello World!')
}
</script>
<style scoped>
.el-alert {
margin: 20px 0 0;
}
.el-alert:first-child {
margin: 0;
}
</style>
使用图标
你可以通过为 Alert 组件添加图标来提高可读性。
通过设置 show-icon
属性来显示 Alert 的 icon,这能更有效地向用户展示你的显示意图。
<template>
<el-alert title="success alert" type="success" show-icon />
<el-alert title="info alert" type="info" show-icon />
<el-alert title="warning alert" type="warning" show-icon />
<el-alert title="error alert" type="error" show-icon />
</template>
<style scoped>
.el-alert {
margin: 20px 0 0;
}
.el-alert:first-child {
margin: 0;
}
</style>
文字居中
使用 center
属性来让文字水平居中。
<template>
<el-alert title="success alert" type="success" center show-icon />
<el-alert title="info alert" type="info" center show-icon />
<el-alert title="warning alert" type="warning" center show-icon />
<el-alert title="error alert" type="error" center show-icon />
</template>
<style scoped>
.el-alert {
margin: 20px 0 0;
}
.el-alert:first-child {
margin: 0;
}
</style>
文字描述
为 Alert 组件添加一个更加详细的描述来使用户了解更多信息。
除了必填的 title
属性外,你可以设置 description
属性来帮助你更好地介绍,我们称之为辅助性文字。 辅助性文字只能存放文本内容,当内容超出长度限制时会自动换行显示。
<template>
<el-alert
title="with description"
type="success"
description="This is a description."
/>
</template>
带图标和描述
在最后, 这是一个带有图标和描述的例子。
<template>
<el-alert
title="success alert"
type="success"
description="more text description"
show-icon
/>
<el-alert
title="info alert"
type="info"
description="more text description"
show-icon
/>
<el-alert
title="warning alert"
type="warning"
description="more text description"
show-icon
/>
<el-alert
title="error alert"
type="error"
description="more text description"
show-icon
/>
</template>
<style scoped>
.el-alert {
margin: 20px 0 0;
}
.el-alert:first-child {
margin: 0;
}
</style>
Alert API
Alert 属性
名称 | 说明 | 类型 | 默认值 | 必填 |
---|---|---|---|---|
title | Alert 标题。 | string | — | 否 |
type | Alert 类型。 | ‘success’ | ‘warning’ | ‘info’ | ‘error’ | ‘info’ | 否 |
description | 描述性文本 | string | — | 否 |
closable | 是否可关闭 | boolean | true | 否 |
center | 文字是否居中 | boolean | false | 否 |
close-text | 自定义关闭按钮文本 | string | — | 否 |
show-icon | 是否显示类型图标 | boolean | false | 否 |
effect | 主题样式 | ‘light’ | ‘dark’ | ‘light’ | 否 |
Alert 事件
名称 | 描述 | 类型 |
---|---|---|
close | 关闭 Alert 时触发的事件 | (evt: MouseEvent) => void |
Alert 插槽
名称 | 描述 |
---|---|
default | Alert 内容描述 |
title | 标题的内容 |