Да, это возможно.
Я создал этот проект очень давно https://github.com/lmarqs/odw-form. Целью было создание встраиваемых компонентов для других сайтов.
Он был создан с использованием vue-cli, но мне пришлось его адаптировать.
По сути, я создал новый файл записи для веб-пакета ( main.prod.js ). Эта запись устанавливает компоненты на Vue. Так что в html можно создать somenthing так:
<div id="app-1">
<my-component1></my-component1>
<my-component2></my-component2>
</div>
<div id="app-2">
<my-component1></my-component1>
<my-component2></my-component2>
</div>
<script>
var app1 = new Vue({
el: "app-1"
});
var app2 = new Vue({
el: "app-2"
});
</script>
После создания новой записи я установил запись на webpack.base.conf.js
module.exports = {
entry: {
main: isProduction ? ["./src/main.prod.js"] : ["./src/main.js"]
}
}
Затем, запустив команду npm run build
, встраиваемые файлы css и js создаются в папке /dist
.