|
|
@@ -44,6 +44,43 @@ module.exports = {
|
|
|
config.resolve.alias['~assets'] = path.join(__dirname, 'assets')
|
|
|
config.resolve.alias['~plugins'] = path.join(__dirname, 'plugins')
|
|
|
config.resolve.alias['~store'] = path.join(__dirname, 'store')
|
|
|
+ ** Run ESLINT on save
|
|
|
+ */
|
|
|
+ extractCSS: {
|
|
|
+ allChunks: true
|
|
|
+ },
|
|
|
+ extend(config, {
|
|
|
+ dev,
|
|
|
+ isClient,
|
|
|
+ isServer
|
|
|
+ }) {
|
|
|
+ Object.assign(config.resolve.alias, {
|
|
|
+ '~utils': path.resolve(__dirname, 'utils'),
|
|
|
+ '~components': path.join(__dirname, 'components'),
|
|
|
+ '~assets': path.join(__dirname, 'assets'),
|
|
|
+ '~plugins': path.join(__dirname, 'plugins'),
|
|
|
+ '~store': path.join(__dirname, 'store')
|
|
|
+ })
|
|
|
+
|
|
|
+ // nuxt ^2.00 版本后,webpack HtmlWebpackPlguin插件打包 会存在htlm5不能转换的问题
|
|
|
+ // 已经命令是将 该插件 压缩部分进行重新处理
|
|
|
+ for (let i = 0; i < config.plugins.length; i++) {
|
|
|
+ if (config.plugins[i] && config.plugins[i].options && config.plugins[i].options.minify) {
|
|
|
+ config.plugins[i].options.minify = {
|
|
|
+ removeAttributeQuotes: true,
|
|
|
+ collapseWhitespace: true,
|
|
|
+ html5: true,
|
|
|
+ minifyCSS: true,
|
|
|
+ removeComments: true,
|
|
|
+ removeEmptyAttributes: true,
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ // config.resolve.alias['~utils'] = path.join(__dirname, 'utils')
|
|
|
+ // config.resolve.alias['~components'] = path.join(__dirname, 'components')
|
|
|
+ // config.resolve.alias['assets'] = path.join(__dirname, './assets')
|
|
|
+ // config.resolve.alias['~plugins'] = path.join(__dirname, 'plugins')
|
|
|
+ // config.resolve.alias['~store'] = path.join(__dirname, 'store')
|
|
|
// config.module.rules.push({
|
|
|
// test: /\.scss$/,
|
|
|
// loader: 'vue-style-loader!css-loader!sass-loader'
|
|
|
@@ -69,22 +106,22 @@ module.exports = {
|
|
|
'vee-validate'
|
|
|
],
|
|
|
babel: {
|
|
|
- presets: ['es2015', 'stage-2'],
|
|
|
- plugins: [
|
|
|
- 'transform-async-to-generator',
|
|
|
- 'transform-runtime'
|
|
|
- ],
|
|
|
- comments: true
|
|
|
- },
|
|
|
- postcss: [
|
|
|
- require('autoprefixer')({
|
|
|
- browsers: ['last 3 versions']
|
|
|
- })
|
|
|
- ]
|
|
|
+ presets: ['@nuxt/babel-preset-app']
|
|
|
+ }
|
|
|
+ // postcss: [
|
|
|
+ // require('autoprefixer')({
|
|
|
+ // browsers: ['last 3 versions']
|
|
|
+ // })
|
|
|
+ // ]
|
|
|
},
|
|
|
- css: [
|
|
|
- {src: '~assets/scss/mobileCommon.scss', lang: 'scss'},
|
|
|
- {src: '~assets/scss/app.scss', lang: 'scss'}
|
|
|
+ css: [{
|
|
|
+ src: '~assets/scss/mobileCommon.scss',
|
|
|
+ lang: 'scss'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ src: '~assets/scss/app.scss',
|
|
|
+ lang: 'scss'
|
|
|
+ }
|
|
|
],
|
|
|
dev: !isProdMode,
|
|
|
env: {
|
|
|
@@ -94,26 +131,27 @@ module.exports = {
|
|
|
// {
|
|
|
// src: '~plugins/axios-nuxt.js'
|
|
|
// },
|
|
|
- // {
|
|
|
- // src: '~plugins/axios.js'
|
|
|
- // },
|
|
|
+ // {
|
|
|
+ // src: '~plugins/axios.js'
|
|
|
+ // },
|
|
|
{
|
|
|
- src: '~plugins/element-ui.js'
|
|
|
- }, {
|
|
|
- src: '~plugins/mint-ui.js'
|
|
|
- }, {
|
|
|
- src: '~plugins/filters.js',
|
|
|
- ssr: false
|
|
|
- }, {
|
|
|
- src: '~plugins/jsonp.js',
|
|
|
- ssr: false
|
|
|
- }, {
|
|
|
- src: '~plugins/vuerify.js',
|
|
|
- ssr: false
|
|
|
- }, {
|
|
|
- src: '~plugins/vee-validate.js',
|
|
|
- ssr: true
|
|
|
- }],
|
|
|
+ src: '~plugins/element-ui.js'
|
|
|
+ }, {
|
|
|
+ src: '~plugins/mint-ui.js'
|
|
|
+ }, {
|
|
|
+ src: '~plugins/filters.js',
|
|
|
+ ssr: false
|
|
|
+ }, {
|
|
|
+ src: '~plugins/jsonp.js',
|
|
|
+ ssr: false
|
|
|
+ }, {
|
|
|
+ src: '~plugins/vuerify.js',
|
|
|
+ ssr: false
|
|
|
+ }, {
|
|
|
+ src: '~plugins/vee-validate.js',
|
|
|
+ ssr: true
|
|
|
+ }
|
|
|
+ ],
|
|
|
/* TODO 代理 */
|
|
|
proxyTable: ['/api/**', '/login/**', '/user**', '/logout**', '/sso/**', '/appeal/**', '/update/user/**', '/valid/**', '/im/**', '/weChat/**', '/bh/**', '/foreign/**']
|
|
|
}
|