Это отличный вариант использования для написания Ember Addon .
Ember Addon позволяет вам настраивать конвейер сборки. Они предоставляют для этого несколько крючков. Эти хуки должны быть реализованы в index.js
файле аддона. Синтаксис этого файла в наши дни немного необычен. Он очень старый и еще не модернизирован. Существует постоянная инициатива по замене этого формата новым форматом , но он пока нестабилен.
Хук, который вы ищете, - contentFor
. Он позволяет вставлять контент в заполнители {{content-for}}
в app/index.html
(и tests/index.html
). Хук получает тип в качестве первого аргумента, который отображается на первый аргумент для {{content-for}}
. Второй и третий аргументы дают вам доступ к конфигурации и существующему контенту, но оба они не нужны для вашего варианта использования. Вы должны вернуть из него HTML, которое должно быть введено в этот хук.
Использование хука для вашего варианта использования может выглядеть следующим образом:
// index.js
'use strict';
module.exports = {
name: require('./package').name,
contentFor(type) {
if (type === "head") {
return "a string with Google Tag Manager snippet";
}
}
};
Вы можете реализовать это как надстройка в репозитории , а затем извлеките его в отдельный пакет для повторного использования в нескольких приложениях.