Не уверен, что я опоздал, но вы можете использовать script-ext-html-webpack-plugin . Это может установить сценарий как defer
, который может отложить выполнение до синтаксического анализа DOM. Кроме того, вы можете внедрить этот скрипт в head
html, чтобы начать получать его параллельно, но выполнить в конце:
plugins: [
new HtmlWebpackPlugin({ template: 'template.ejs', inject: 'head'}),
new ScriptExtHtmlWebpackPlugin({ defaultAttribute: 'defer' }),
]
The standard way to do this in Capistrano:
task :whatever, :roles => [:x, :y, :z] do
x_tasks
y_tasks
z_tasks
end
task :x_tasks, :roles => :x do
#...
end
task :y_tasks, :roles => :y do
#...
end
task :z_tasks, :roles => :z do
#...
end
So yes, you do need to write separate tasks, but you can call them from a parent task and they will filter appropriately.