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

Фулстек разработчик, Веб-разработчик
Golang
JavaScript
Python
MongoDB
SQL
Linux
Git
Bash
Nginx
MySQL