Я разработчик JavaScript и довольно новичок в создании процесса сборки с нуля. Я решил использовать Grunt для моего текущего проекта и создал GruntFile, который делает около 90% того, что мне нужно, и он отлично работает, за исключением одной проблемы. У меня есть несколько файлов JavaScript, на которые я ссылаюсь, пока я разрабатываю расширение chrome в файле manifest.json
. Для моего процесса сборки я объединяю все эти файлы и сворачиваю их в один файл, который будет включен в manifest.json
. Есть ли способ обновить ссылки на файлы в файле manifest.json
во время процесса сборки, чтобы он указывал на сокращенную версию?
Вот фрагмент файла манифеста src:
{
"content_scripts": [{
"matches": [
"http://*/*"
],
"js": [
"js/lib/zepto.js",
"js/injection.js",
"js/plugins/plugin1.js",
"js/plugins/plugin2.js",
"js/plugins/plugin3.js",
"js/injection-init.js"
]
}],
"version": "2.0",
}
У меня есть задача grunt, которая объединяет и уменьшает все перечисленные выше файлы js в один файл с именем injection.js
и хочет, чтобы задача grunt могла изменить файл манифеста, чтобы он выглядел следующим образом:
{
"content_scripts": [{
"matches": [
"http://*/*"
],
"js": [
"js/injection.js"
]
}],
"version": "2.0",
}
На данный момент у меня есть 2 версии файла манифеста, один для dev и один для сборки, в процессе сборки он копирует версию сборки. Это означает, что мне нужно поддерживать 2 версии, которые я бы предпочел не делать. Есть ли способ сделать это более элегантно с Grunt?