Расширение для Chrome на TypeScript

TypeScript — исправленный и дополненный JavaScript. Трепещите любители ООП и прочие тру-программисты)
А учитывая что Angular2 написан именно на этом языке, можно считать что со временем станет стандартом для фронтенда.
Мой пример касается использования TypeScript при написание расширений для Chrome.

Для начала ссылка на github.
Несколько нюансов.

В качестве шаблонизатор используется Underscorejs.

Т.к. chrome в последних весиях привередлив в смысле безопасности то в расширение по умолчанию запрещено использовать eval. А большинство шаблонизаторов (и Underscorejs не исключение) используют именно его.
Все решается установкой правильно значение content_security_policy в манифесте

 "content_security_policy": "script-src 'self' 'unsafe-eval'; object-src 'self'"

Про значения content_security_policy можно почитать на данном сайте.

d.ts файлы

TypeScript требует описание используемых объектов. Набор для наиболее популярных библиотек можно найти на github. Оттуда я и позаимствовал описание для chrome.runtime.
В принципе вам не кто не мешает объявить в коде объект как any. И тогда компилятору будет плевать что там у вас в переменной. Но тогда теряется часть прелести TypeScript)

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *