Chuyển tới nội dung chính

Toast

Toast App Methods

import { zmp } from "zmp-framework/react";

Tạo một Toast instance

zmp.toast.create(parameters);
  • parameters - object. Object chứa các toast parameters
  • Trả về instance của toast vừa tạo

Hủy một Toast instance

zmp.toast.destroy(el);
  • el - HTMLElement hoặc string (CSS Selector) hoặc object. Toast element hoặc Toast instance cần huy. zmp.toast.get(el)- Lấy Toast instance
  • el - HTMLElement hoặc string (CSS Selector). Toast element.
  • Trả về instance của toast

Hiển thị Toast

zmp.toast.open(el, animate);
  • el - HTMLElement hoặc string (CSS Selector). Toast element cần mở.
  • animate - boolean. Hiện toast cùng với animation.
  • Trả về instance của toast

Đóng một Toast

zmp.toast.close(el, animate);
  • el - HTMLElement hoặc string (CSS Selector). Toast element cần đóng
  • animate - boolean. Đóng Toast cùng với animation.
  • Trả về instance của toast

Tạo Toast instance và hiển thị ngay lập tức

zmp.toast.show(parameters);
  • parameters - object. Object chứa các toast parameters
  • Trả về instance của toast

Toast Parameters

ParameterTypeDefaultDescription
elHTMLElementToast element. Có thể tạo toast element sử dụng html string
iconstringToast icon. Ví dụ: <Icon zmp="zi-arrow-left" /> hoặc <img src="path/to/icon.png">
textstringNội dung bên trong toast
positionstringbottomVị trí toast xuất hiện. Có thể là bottom, center hoặc top
horizontalPositionstringleftCăn vị trí toast xuất hiện trên màn hình rộng. Chỉ có hiệu lực đôi với top và bottom toasts. Có thể là left, center hoặc right
closeButtonbooleanfalseThêm close button
closeButtonColorstringMột trong các màu tại màu sắc mặc định
closeButtonTextstringOkChữ trên nút đóng
closeTimeoutnumberThời gian toast tự dộng đóng (tính theo ms)
cssClassstringThêm class cho toast element
destroyOnClosebooleanfalseHủy toast instance sau khi đóng
renderfunctionCó thể tùy chỉnh render. Cần trả về đoạn mã html
onobjectObject chứa các Events Handlers

Tất cả các parameters bên trên có thể sử dụng global app parameters trong toast property để set mặc định cho tất cả toast:

<script>
const zmpparams ={
...
toast: {
closeTimeout: 3000,
closeButton: true,
}
};
</script>

<template>
<zmp-app v-bind="zmpparams"></zmp-app>
</template>

Toast Instance Methods & Properties

Sau khi tạo toast bằng app method, ta được toast instance:

const toast = zmp.toast.create({
/* tham số khởi tạo */
});

Sau khi có instance của toast đã tạo, chúng ta có thể sử dụng các thuộc tính, phương thức sau:

| Properties | | ------------ | -------------------------------------- | | toast.el | Toast HTML element | | toast.$el | zmpDom instance của toast HTML element | | toast.params | Các tham số của tast |

| Methods | | -------------------------- | -------------------------------------------- | | toast.open() | Mở toast | | toast.close() | Đóng toast | | toast.on(event, handler) | Thêm event handler | | toast.once(event, handler) | Thêm event handler và xoá ngay sau khi fired | | toast.off(event, handler) | Xoá event handler | | toast.off(event) | Xoá tất cả event hanlder trên event cụ thể | | toast.emit(event, ...args) | Tự kích hoạt event thông qua instance |

Toast Events

Event handlers được khai báo trong parameter on của toast hoặc global zmp instance (khi đó có thêm prefix toast):

const toast = zmp.toast.create({
text: "Hello, how are you?",
on: {
opened: function () {
console.log("Toast opened");
}
}
});
// Hoặc
zmp.on("toastOpened", function () {
console.log("Toast opened");
});
EventArgumentsTargetDescription
closeButtonClicktoasttoastEvent khi người dùng click lên buton đóng toast. Với đôi số event handler nhận vào toast instance
toastCloseButtonClicktoastappTương tự như closeButtonClick nhưng được register trên instance zmp
opentoasttoastEvent khi Toast bắt đầu quá trình mở. Với đối số event handler nhận vào toast instance
toastOpentoastappTương tự như open nhưng được register trên instance zmp
openedtoasttoastEvent sau khi Toast hoàn thành quá trình mở. Với đối số event handler nhận vào toast instance
toastOpenedtoastappTương tự như opened nhưng được register trên instance zmp
closetoasttoastEvent khi Toast bắt đầu quá trình đóng. Với đối số event handler nhận vào toast instance
toastClosetoastappTương tự như close nhưng được register trên instance zmp
closedtoasttoastEvent sau khi Toast đóng hoàn toàn. Với đối số event handler nhận vào toast instance
toastClosedtoastappTương tự như closed nhưng được register trên instance zmp
beforeDestroytoasttoastEvent ngay trước khi Toast instance bị hủy. Với đối số event handler nhận vào toast instance
toastBeforeDestroytoastappTương tự như beforeDestroy nhưng được register trên instance zmp

Ví dụ

Code demo fallback when rendering server side!