Pull to refresh
20
0
Андрей Германов @germanov_dev

программист

Send message

Все дело в функции openImagesPage. Скорее всего новая вкладка активируется раньше, чем ей отправляется сообщение. Попробуйте увеличить таймаут, сделайте его, например 500 миллисекунд, а не 100.

Кроме того, в последних версиях Chrome API, свойство "selected" для функции chrome.tabs.create стало deprecated, и рекомендуется использовать "active" вместо него.

Я эти два момента исправил в статье. Вот последняя версия openImagesPage:

function openImagesPage(urls) {
    // Создать новую вкладку браузера с HTML-страницей интерфейса  
    chrome.tabs.create({"url": "page.html",active:false},(tab) => { 
        setTimeout(()=>{
          // отправить список URL в новую вкладку
          chrome.tabs.sendMessage(tab.id, urls, (resp) => {
              // сделать вкладку активной
              chrome.tabs.update(tab.id, {active: true});
          })
        },500)
    });
}

Да действительно, пропустил этот блок. Теперь исправлено. Спасибо за замечание.

Отличный интерфейс! Жаль что не могу попробовать, я линуксоид и у меня нет Windows года с 2000-го.

Будет классно если сделаете версию на JavaScript и выложите куда-нибудь.

Я когда-то тоже крестики-нолики написал: https://games.germanov.dev/tictactoe/

Расширение, запускаемое в браузере или публикуемое в Chrome Store должно содержать только Javascript, поэтому Typescript нужно сначала компилировать в JavaScript. Соответственно, в manifest.json и в HTML-страницах расширения указываются js-файлы. Это так же, как создавать обычное web-приложение на Typescript: пишите .ts, -> компилируете в .js -> запускаете в браузере.

Есть шаблон расширения браузера на TypeScript, автоматизирующий эту сборку:

https://github.com/chibat/chrome-extension-typescript-starter

Да можно, как в обычном web-приложении. Добавляйте их в главную html-страницу расширения, например так: <script src="jquery.min.js"></script>.

Спасибо!

Эта статья для совсем начинающих и прочитав только ее, такое расширение вы врядле сразу напишите. Однако идея интересная. Возможно сделаю статью о создании расширения такого типа в дальнейшем.

Также будет замечательно если вы что-нибудь напишите, когда добъетесь результатов.

Ок, убрал "постоянно работает в фоне", спасибо за уточнение.

Я использую Wordtune https://www.wordtune.com/ вместо Grammarly, но узнал здесь другие варианты, тоже попробую, сравню.

Information

Rating
Does not participate
Location
Темрюк, Краснодарский край, Россия
Date of birth
Registered
Activity

Specialization

Fullstack Developer, Web Developer
Golang
JavaScript
Python
MongoDB
SQL
Linux
Git
Bash
Nginx
MySQL