slush-lucas-vue2
Version:
A lucas generator.
96 lines (77 loc) • 2.16 kB
JavaScript
;
/**
* 模块加载
* @name 加载本地模块
* @param path 路径模块
* @param lucas 构建模块
*/
var path = require('path');
var lucas = require('lucas');
/** 配置文件设置 **/
lucas.set({
//入口文件 /* ['./src/pageA.js', './src/pageB.js'] || {page1: './page1', page2: ['./entry1', './entry2']} */
entry: {
app: './src/main.js'
},
//出口目录
dist: './dist',
//模板文件 /* {'index.html': './src/index.html', 'admin.html': './src/admin.html'} */
template: './src/index.html',
//开发服务器
devServer: {<% if (devServer) { %>
port: 8080,
hostname: 'localhost',
protocol: 'http:',
publicPath: '/'<% } else { %>
enable: false,
extractCSS: true<% } %>
},
// 每次构建时清理掉之前的输出目录
clean: true,
// 输出文件名是否带 7 位的长度 hash 值
hash: true,
// 构建后的文件带 sourceMap
sourceMap: false,
//
chunk: [
{
name: 'vendor',
minChunks: function (module, count) {
return (
module.resource &&
/\.js$/.test(module.resource) &&
module.resource.indexOf(
path.join(__dirname, 'node_modules')
) === 0
);
}
},
{
// 提取WebPACK运行和模块化文件
name: 'manifest',
chunks: ['vendor']
}
],
<% if (nextLucas) { %>postcss: [
// require('...')
],<% } %>
// 文件目录
publicPath: '/dist/',
// 静态文件目录
assetsPath: 'static',
// 图片、字体等资源文件小于多少时(单位 Byte)内嵌在 JS 或 CSS 中,默认为 10000
urlLoaderLimit: 10000,
// 将 JS 提取出到指定目录
extractJsPath:'js/',
// 将 CSS 提取出成单独的文件
extractCSS: 'css/[name].[contenthash:7].css',
// 文档输出路径
docPath: 'doc/',
//插件依赖
extends: ['vue', 'lint'<% if( csstype) { %>, '<%= csstype %>'<% } %><% if( unit) { %>, 'karma'<% } %><% if (nextLucas) { %>, 'autoprefixer'<% } %>]
});
//增加
lucas.add('resolve.alias', {
'src': path.join(__dirname, 'src')
});
module.exports = lucas.resolve();