×

Cài đặt thư viện Toastr trong JavaScript

Thư viện Toastr là một tập hợp các thông báo JavaScript dễ sử dụng, được thiết kế để đơn giản hóa việc hiển thị thông báo trên trình duyệt. Toastr hỗ trợ các loại thông báo như thành công, cảnh báo, lỗi và thông tin. Trong bài viết này, chúng ta sẽ tìm hiểu cách cài đặt thư viện Toastr trong JavaScript và cách sử dụng nó hiệu quả trong các dự án của bạn.

Giới thiệu về Toastr

Toastr là một thư viện thông báo đơn giản dành cho các trang web hiện đại. Nó được sử dụng để hiển thị các thông báo ngắn gọn, dễ hiểu và dễ tùy chỉnh. Một số đặc điểm nổi bật của Toastr bao gồm:

  • Dễ dàng tích hợp vào các dự án web.
  • Hỗ trợ nhiều loại thông báo khác nhau.
  • Tính tùy chỉnh cao với các tùy chọn cấu hình.
  • Tương thích với nhiều trình duyệt web.

Cài đặt Thư viện Toastr

Trước khi chúng ta bắt đầu sử dụng Toastr, hãy cùng tìm hiểu cách cài đặt thư viện này. Có ba cách chính để cài đặt Toastr: thông qua CDN, NPM hoặc tải về trực tiếp các tệp tin nguồn.

1. Cài Đặt Thông Qua CDN

Đây là cách đơn giản nhất để tích hợp Toastr vào dự án của bạn. Bạn chỉ cần thêm các thẻ <link><script> vào tệp HTML của bạn như sau:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Toastr Example</title>
    <!-- Thêm Toastr CSS từ CDN -->
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/toastr.js/latest/toastr.min.css">
</head>
<body>
    <!-- Thêm Toastr JavaScript từ CDN -->
    <script src="https://cdnjs.cloudflare.com/ajax/libs/toastr.js/latest/toastr.min.js"></script>
    <script>
        // Sử dụng Toastr JS để tạo thông báo
        toastr.success('Hello World!', 'Toastr Fun');
    </script>
</body>
</html>

2. Cài Đặt Thông Qua NPM

Nếu bạn dùng Node.js và muốn quản lý thư viện thông qua NPM (Node Package Manager), bạn có thể cài đặt Toastr bằng cách mở terminal và chạy lệnh sau:

npm install toastr

Sau khi cài đặt xong, bạn có thể import thư viện vào tệp JavaScript của mình:

import 'toastr/build/toastr.min.css';
import toastr from 'toastr';

toastr.success('Hello World!', 'Toastr Fun');

3. Tải Về Trực Tiếp Các Tệp Tin Nguồn

Bạn cũng có thể tải về các tập tin nguồn từ trang GitHub chính thức của Toastr (https://github.com/CodeSeven/toastr) và lưu vào dự án của bạn. Sau đó, thêm đường dẫn đến tệp CSS và JS vào tệp HTML của bạn:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Toastr Example</title>
    <!-- Thêm Toastr CSS -->
    <link rel="stylesheet" href="path/to/toastr.min.css">
</head>
<body>
    <!-- Thêm Toastr JavaScript -->
    <script src="path/to/toastr.min.js"></script>
    <script>
        // Sử dụng Toastr JS để tạo thông báo
        toastr.success('Hello World!', 'Toastr Fun');
    </script>
</body>
</html>

Cách Sử Dụng Toastr

Sau khi cài đặt xong Toastr, bạn có thể bắt đầu sử dụng nó để tạo các thông báo. Dưới đây là cách sử dụng cơ bản và một số tùy chọn cấu hình nâng cao.

Loại Thông Báo

Toastr hỗ trợ các loại thông báo khác nhau như thành công, cảnh báo, lỗi và thông tin. Bạn có thể sử dụng các phương thức sau để tạo các loại thông báo tương ứng:

// Thông báo thành công
toastr.success('Operation was successful', 'Success');

// Thông báo cảnh báo
toastr.warning('This is a warning message', 'Warning');

// Thông báo lỗi
toastr.error('An error has occurred', 'Error');

// Thông báo thông tin
toastr.info('This is an informational message', 'Information');

Cấu Hình Toastr

Thư viện Toastr cung cấp nhiều tùy chọn cấu hình để bạn có thể tùy chỉnh các thông báo theo nhu cầu của mình. Dưới đây là một vài tùy chọn cấu hình phổ biến:

toastr.options = {
  closeButton: true, // Hiển thị nút đóng trên thông báo
  debug: false, // Hiển thị thông tin debug
  newestOnTop: true, // Hiển thị thông báo mới nhất ở trên cùng
  progressBar: true, // Hiển thị thanh tiến trình
  positionClass: 'toast-top-right', // Vị trí của thông báo trên màn hình
  preventDuplicates: true, // Ngăn chặn các thông báo trùng lặp
  onclick: null, // Hàm callback khi click vào thông báo
  showDuration: '300', // Thời gian (ms) để hiện thị thông báo
  hideDuration: '1000', // Thời gian (ms) để ẩn thông báo
  timeOut: '5000', // Thời gian (ms) thông báo sẽ tự động ẩn sau khi hiện
  extendedTimeOut: '1000', // Thời gian (ms) sau khi người dùng di chuột qua thông báo
  showEasing: 'swing', // Hiệu ứng easing khi hiện thông báo
  hideEasing: 'linear', // Hiệu ứng easing khi ẩn thông báo
  showMethod: 'fadeIn', // Phương thức hiển thị thông báo
  hideMethod: 'fadeOut' // Phương thức ẩn thông báo
};

Vị Trí của Thông Báo

Bạn có thể thay đổi vị trí của thông báo trên màn hình bằng cách thay đổi thuộc tính positionClass. Dưới đây là một số giá trị bạn có thể sử dụng:

toastr.options.positionClass = 'toast-top-right'; // Góc trên phải
toastr.options.positionClass = 'toast-bottom-right'; // Góc dưới phải
toastr.options.positionClass = 'toast-bottom-left'; // Góc dưới trái
toastr.options.positionClass = 'toast-top-left'; // Góc trên trái
toastr.options.positionClass = 'toast-top-full-width'; // Trên cùng màn hình, đầy đủ chiều rộng
toastr.options.positionClass = 'toast-bottom-full-width'; // Dưới cùng màn hình, đầy đủ chiều rộng
toastr.options.positionClass = 'toast-top-center'; // Trung tâm trên cùng
toastr.options.positionClass = 'toast-bottom-center'; // Trung tâm dưới cùng

Tùy Chọn Nâng Cao

Toastr cung cấp một số tùy chọn nâng cao khác để bạn có thể tùy chỉnh thêm trải nghiệm sử dụng thông báo. Một vài ví dụ đáng chú ý bao gồm:

// Tạo thông báo với HTML tùy chỉnh
toastr.success('<strong>Well Done!</strong> You successfully read this important alert message.', 'Success', { allowHtml: true });

// Tạo thông báo với thời gian hiển thị tùy chỉnh
toastr.info('This will stay visible for 10 seconds', 'Information', { timeOut: 10000 });

// Gọi hàm callback khi thông báo bị ẩn
toastr.warning('This warning will trigger an alert when it fades out', 'Warning', {
  onHidden: function() { alert('Goodbye!'); }
});

// Gọi hàm callback khi thông báo được nhấp
toastr.error('Click this message to log an error', 'Error', {
  onclick: function() { console.error('The error message was clicked!'); }
});

Ứng Dụng Thực Tế

Toastr rất hữu ích trong nhiều tình huống thực tế khi bạn cần thông báo cho người dùng về trạng thái của một hành động, như lưu dữ liệu, tải dữ liệu thất bại, hoặc các sự kiện khác từ người dùng. Hãy cùng xem xét một số ví dụ về cách Toastr có thể được sử dụng trong các ứng dụng web thực tế.

Ví Dụ 1: Thông Báo Thành Công Khi Người Dùng Đăng Nhập

Khi người dùng đăng nhập thành công vào ứng dụng của bạn, bạn có thể hiển thị một thông báo chào mừng:

if (loginSuccessful) {
  toastr.success('Welcome back!', 'Login Successful');
}

Ví Dụ 2: Thông Báo Lỗi Khi Không Thể Kết Nối Tới Server

Khi ứng dụng của bạn không thể kết nối tới server, bạn có thể hiển thị một thông báo lỗi để người dùng biết:

try {
  await fetchDataFromServer();
} catch (error) {
  toastr.error('Unable to connect to the server. Please try again later.', 'Connection Error');
}

Ví Dụ 3: Thông Báo Cảnh Báo Khi Người Dùng Sắp Xóa Dữ Liệu

Khi người dùng thực hiện một hành động quan trọng như xóa dữ liệu, bạn có thể hiển thị một thông báo cảnh báo để họ nhận thức được hành động này:

function confirmDelete() {
  toastr.warning('Are you sure you want to delete this item?', 'Warning', {
    closeButton: true,
    timeOut: 0, // Không tự động ẩn thông báo
    extendedTimeOut: 0,
    tapToDismiss: false // Không cho phép tắt thông báo bằng cách nhấp chuột
  });
}

Tổng Kết

Toastr là một thư viện mạnh mẽ và linh hoạt để hiển thị các thông báo trong ứng dụng web của bạn. Với khả năng tùy chỉnh cao và dễ dàng tích hợp, Toastr sẽ giúp cải thiện trải nghiệm người dùng và cung cấp phản hồi nhanh chóng cho các hành động của họ. Thông qua bài viết này, bạn đã học được cách cài đặt Toastr và sử dụng nó trong các trường hợp thực tế. Hãy thử áp dụng Toastr vào dự án của bạn để thấy hiệu quả tuyệt vời mà nó mang lại.

Comments