spinjs
Version:
[](https://gitter.im/sysgears/spinjs?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) [ • 850 B
text/typescript
import { Builder } from '../Builder';
import { ConfigPlugin } from '../ConfigPlugin';
import Spin from '../Spin';
export default class VuePlugin implements ConfigPlugin {
public configure(builder: Builder, spin: Spin) {
const stack = builder.stack;
if (stack.hasAll(['vue', 'webpack'])) {
const webpack = builder.require('webpack');
const VueLoaderPlugin = builder.require('vue-loader/lib/plugin');
builder.config = spin.merge(builder.config, {
module: {
rules: [
{
test: /\.vue$/,
use: { loader: 'vue-loader', options: spin.createConfig(builder, 'vue', {}) }
}
]
},
resolve: {
alias: {
vue$: 'vue/dist/vue.esm.js'
}
},
plugins: [new VueLoaderPlugin()]
});
}
}
}