-
Notifications
You must be signed in to change notification settings - Fork 19
/
nuxt.config.js
75 lines (74 loc) · 1.91 KB
/
nuxt.config.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
const webpack = require('webpack')
module.exports = {
/*
** Headers of the page
*/
head: {
title: 'binlive',
meta: [
{ charset: 'utf-8' },
{ name: 'viewport', content: 'width=device-width, initial-scale=1' },
{ name: 'keywords', content: 'binlive博客 vue ssr blog,前端开发,前端,web开发,node,vue,react,webpack,git' },
{ hid: 'description', name: 'description', content: 'binlive博客 vue ssr blog,前端开发,前端,web开发,node,vue,react,webpack,git' }
],
link: [
{ rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' }
]
},
/*
** Customize the progress bar color
*/
loading: { color: '#44C1B8', height: '4px' },
vender:[
'element-ui', 'axios', '~untils/index.js'
],
css: [
'element-ui/lib/theme-chalk/index.css',
{src: '@/style/style.css', lang: 'css'}
],
plugins: [
{ src: '~plugins/element-ui', ssr: true }
],
/*
** Build configuration
*/
build: {
build: {
vendor: ['element-ui', 'axios', 'Button', 'Input', 'Tabs', 'Message', 'TabPane', 'Row', 'Col', 'Loading', 'Notification', 'Icon']
},
analyze: false,
plugins: [
new webpack.ContextReplacementPlugin(
/highlight\.js\/lib\/languages$/,
new RegExp(`^./(${['javascript', 'css', 'php', 'sql', 'python', 'bash'].join('|')})$`),
)
],
babel: {
plugins: [['component', [{
libraryName: 'element-ui',
styleLibraryName: 'theme-chalk'
}]]],
comments: true
},
/*
** Run ESLint on save
*/
extend (config, { isDev, isClient }) {
if (isDev && isClient) {
config.module.rules.push({
enforce: 'pre',
test: /\.(js|vue)$/,
loader: 'eslint-loader',
exclude: /(node_modules)/
})
}
}
},
modules: [
'@nuxtjs/axios',
'@nuxtjs/proxy'
],
proxy: [
['/api', { target: 'http://localhost:3080' }]
]
}