# Toast 轻提示
概述
Toast 轻提示,一种轻量级反馈/提示,适合用于页面转场、数据交互的等场景中。
# 支持平台
目前开发小程序与H5推荐使用 FirstUI nvue版本 (opens new window)。
安卓系统版本 | 安卓uni-app | 安卓uniapp-x | iOS系统版本 | iOS uniapp | iOS uniapp-x | 小程序 | H5/Web |
---|---|---|---|---|---|---|---|
5.0 | × | ✓ | 9.0 | × | × | × | ✓ |
# 引入
以下介绍两种常用的引入方式。
第一种:在页面中引用、注册
import fuiToast from "@/components/firstui/fui-toast/fui-toast.uvue"
export default {
components:{
fuiToast
}
}
1
2
3
4
5
6
2
3
4
5
6
第二种:easycom组件规范
传统vue组件,需要安装、引用、注册,三个步骤后才能使用组件。easycom将其精简为一步。
First UI easycom配置请查看 快速上手。
如果不了解easycom,可先查看 官网文档 (opens new window)。
# 代码演示
部分示例演示,完整使用请参考示例程序以及文档API。
无图标提示
通过 ref
来注册组件引用信息,引用信息将会注册在父组件的$refs对象上。
<fui-button type="gray" btn-size="medium" text="无图标提示" :bold="true" @onclick="showToast"></fui-button>
<fui-toast ref="toast" :radius="16"></fui-toast>
1
2
2
import { ComponentPublicInstance } from 'vue'
import { FuiToastShowParam } from '@/components/firstui/fui-types/index.uts'
export default {
data() {
return {
}
},
methods: {
showToast() {
let options = {
text:'请输入手机号'
} as FuiToastShowParam;
(this.$refs['toast'] as ComponentPublicInstance).$callMethod('show', options)
}
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
带图标提示
通过 ref
来注册组件引用信息,引用信息将会注册在父组件的$refs对象上。
<fui-button type="gray" btn-size="medium" text="带图标提示" :bold="true" margin="24rpx" @onclick="showToast"></fui-button>
<fui-toast ref="toast"></fui-toast>
1
2
2
import { ComponentPublicInstance } from 'vue'
import { FuiToastShowParam } from '@/components/firstui/fui-types/index.uts'
export default {
data() {
return {
}
},
methods: {
showToast() {
let options = {
text:'First UI !',
src:"/static/images/common/img_logo.png"
} as FuiToastShowParam;
(this.$refs['toast'] as ComponentPublicInstance).$callMethod('show', options)
}
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
自定义提示内容
将自定义内容放入组件内,调用显示时参数传空对象即可。
<fui-button type="gray" btn-size="medium" text="自定义内容" margin="24rpx" :bold="true" @onclick="showToast">
<fui-toast ref="toastRef">
<view class="fui-toast__custom">
<fui-icon name="checkbox" color="#fff"></fui-icon>
<text class="fui-toast__txt">操作成功</text>
</view>
</fui-toast>
1
2
3
4
5
6
7
2
3
4
5
6
7
import { FuiToastShowParam } from '@/components/firstui/fui-types/index.uts'
export default {
data() {
return {
}
},
methods: {
showToast() {
const options = {} as FuiToastShowParam;
//该写法仅在easycom模式下使用
(this.$refs['toastRef'] as FuiToastComponentPublicInstance).show(options)
}
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
.fui-toast__custom {
display: flex;
align-items: center;
justify-content: center;
flex-direction: column;
}
.fui-toast__txt {
font-size: 32rpx;
color: #FFFFFF;
padding-top: 12rpx;
}
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
# Slots
插槽名称 | 说明 |
---|---|
default | 自定义提示内容 |
# Props
属性名 | 类型 | 说明 | 默认值 | 平台差异说明 |
---|---|---|---|---|
padding | String | 提示框padding值,格式同css | 32rpx 32rpx | - |
background | String | 提示框背景颜色 | rgba(0,0,0,.6) | - |
width | Number | 图标宽度(高度与宽度一致),单位rpx | 64 | - |
radius | Number | 图标圆角大小,单位rpx | 64 | - |
size | Number, String | 提示信息字体大小,单位rpx | 30 | - |
color | String | 提示信息文本颜色 | #fffF | - |
position | String | 提示信息显示位置,可选值:center、bottom | center | - |
zIndex | Number | 提示框z-index值 | 1001 | - |
# Events
事件名 | 类型 | 说明 | 回调参数 |
---|---|---|---|
- | - | - | - |
# Methods
通过 ref 来注册组件引用信息,引用信息将会注册在父组件的$refs对象上。
方法名 | 类型 | 说明 | 传入参数 |
---|---|---|---|
show | (options : FuiToastShowParam)=>void | 显示提示信息 | FuiToastShowParam |
# FuiToastShowParam
/**
* fui-toast 轻提示 组件show方法 参数类型
* @description Toast 轻提示组件show方法参数类型
* @param {number} duration {number} 显示持续时间,单位ms,可选
* @param {string} src {string} 提示图标,可选
* @param {string} text {string} 提示信息,使用插槽自定义内容时可不传
*/
export type FuiToastShowParam = {
duration ?: number;
src ?: string;
text ?: string
}
/*页面引入*/
import { FuiToastShowParam } from '@/components/firstui/fui-types/index.uts'
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15