localeDetection next-i18next làm gì?

localeDetectiontrong next-i18nextquản lý cách thư viện xác định ngôn ngữ của người dùng. Theo mặc định, next-i18nextcố gắng phát hiện ngôn ngữ thông qua một số phương pháp bao gồm:

  • Tiền tố đường dẫn URL: Kiểm tra xem đường dẫn URL có bắt đầu bằng mã địa phương hay không (ví dụ: /en/about).

  • Cookie: Tìm kiếm cookie lưu trữ vị trí đã chọn trước đó.

  • Tiêu đề Accept-Language: Sử dụng accept-languagetiêu đề từ yêu cầu của trình duyệt.

  • Ngôn ngữ mặc định: Nếu không tìm thấy ngôn ngữ nào ở trên, nó sẽ chuyển sang ngôn ngữ mặc định đã cấu hình.

Tùy localeDetectionchọn trong next-i18nextcấu hình cho phép tùy chỉnh hành vi này. Khi đặt thành true(mặc định), tất cả các phương pháp phát hiện này đều được bật. Đặt thành falsevô hiệu hóa phát hiện ngôn ngữ tự động, chỉ dựa vào đường dẫn URL hoặc tên miền để xác định ngôn ngữ.Khi tắt, ứng dụng sẽ không tự động chuyển hướng dựa trên ngôn ngữ ưa thích của người dùng. Nó sẽ chỉ sử dụng thông tin ngôn ngữ có trong URL. Điều này có thể hữu ích trong các tình huống mà ngôn ngữ phải được kiểm soát chặt chẽ bởi cấu trúc URL hoặc khi triển khai logic chuyển đổi ngôn ngữ tùy chỉnh.Để tắt tính năng phát hiện ngôn ngữ, next-i18nextcấu hình phải được sửa đổi:JavaScript

// next-i18next.config.js
module.exports = {
  i18n: {
    locales: ['en', 'de', 'es'],
    defaultLocale: 'en',
    localeDetection: false,
  },
};

Last updated

Was this helpful?