Chrome Extension - Snippet mở trang cảm ơn, changelog

code

Trước đây tớ hay dùng localStorage để tạo flag đánh dấu khi nào người dùng vừa mới cài đặt extension của mình. Và sau này khi ngó qua mã nguồn của mấy extension phổ biến cũng thấy họ làm cách tương tự. Cụ thể thì như này:

// background.js
(function($) {
  if ($.getItem('installed') === null) {
    $.setItem('installed', true);

    chrome.tabs.create({
      url: 'http://example.com/thank-you.html'
    });
  }
})(localStorage);

Cách làm này tất nhiên là có thể dùng được, không sao cả. Tuy nhiên nó không chuyên nghiệp, vì:

  1. Bạn phải tạo ra một dữ liệu tạm thông qua localStorage.
  2. Bạn không thể biết được người dùng vừa cài đặt hay chỉ vừa cập nhật phiên bản mới.

Sau này khi lần mò trong Document của Google thì tớ biết được một cách hay hơn, xin chia sẻ lại với các bạn:

// background.js
chrome.runtime.onInstalled.addListener(details => {
  switch (details.reason) {
    case 'install':
      chrome.tabs.create({url: 'http://example.com/thank-you.html'});
      break;

    case 'update':
      chrome.tabs.create({url: 'http://example.com/changelog.html'});
      break;
  }
});

Ưu điểm của cách này:

  1. Là API chính thức của Chrome.
  2. Không cần tạo dữ liệu tạm để làm flag.
  3. Có thể biết người dùng vừa cài đặt hay cập nhật phiên bản mới. Từ đó chúng ta có thể mở trang cảm ơn, Donate, CTA (kêu gọi người dùng đánh giá extension trên Store chẳng hạn) hoặc cho người dùng biết các thay đổi trong phiên bản mới (changelog).

:point_right: Theo dõi Juno_okyo trên Kipalog để nhận được thông báo khi có bài viết mới! :wink:

:point_right: Social Networks: Facebook · Twitter · Google+ · GitHub

Bình luận


White
{{ comment.user.name }}
Bỏ hay Hay
{{comment.like_count}}
Male avatar
{{ comment_error }}
Hủy
   

Hiển thị thử

Chỉnh sửa

White

Juno_okyo

24 bài viết.
846 người follow
Kipalog
{{userFollowed ? 'Following' : 'Follow'}}
Cùng một tác giả
White
150 15
(Ảnh) Biểu thức chính quy (hay regex) là một công cụ mạnh mẽ mà mỗi nhà phát triển nên biết. Nó có thể khớp với một chuỗi các ký tự dựa trên các t...
Juno_okyo viết gần 3 năm trước
150 15
White
82 15
(Ảnh) Trong bài viết này tôi sẽ chia sẻ 12 thủ thuật vô cùng hữu ích cho JavaScript. Những thủ thuật này sẽ giúp bạn giảm lượng code cũng như làm ...
Juno_okyo viết hơn 1 năm trước
82 15
White
57 6
Bạn thấy chán các trang web cũ? Muốn tìm một vài góc mới của Internet để giúp bạn tìm lại sự hứng thú? Tốt thôi, bạn đã gặp may đấy. Dù bạn đang tì...
Juno_okyo viết gần 2 năm trước
57 6
Bài viết liên quan
White
25 6
(Link) mình đã giới thiệu qua cái cấu trúc của 1 extension(viết tắt Ext) cho chrome như thế nào rồi. Hôm nay mình giải thích và làm từng bước, làm ...
noname viết 3 năm trước
25 6
{{like_count}}

kipalog

{{ comment_count }}

bình luận

{{liked ? "Đã kipalog" : "Kipalog"}}


White
{{userFollowed ? 'Following' : 'Follow'}}
24 bài viết.
846 người follow

 Đầu mục bài viết

Vẫn còn nữa! x

Kipalog vẫn còn rất nhiều bài viết hay và chủ đề thú vị chờ bạn khám phá!