nuxt.config.js 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. const isProdMode = Object.is(process.env.NODE_ENV, 'production')
  2. const baseUrl = process.env.BASE_URL || (isProdMode ? 'http://192.168.253.31:9080' : 'http://192.168.253.31:9080')
  3. module.exports = {
  4. /*
  5. ** Headers of the page
  6. */
  7. head: {
  8. title: '健身锁后台管理',
  9. meta: [
  10. { charset: 'utf-8' },
  11. { name: 'viewport', content: 'width=device-width, initial-scale=1' },
  12. { hid: 'description', name: 'description', content: 'fitness barn admin ssr project' }
  13. ],
  14. link: [
  15. { rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' }
  16. ]
  17. },
  18. /*
  19. ** Customize the progress bar color
  20. */
  21. loading: { color: '#3B8070' },
  22. /*
  23. ** Build configuration
  24. */
  25. build: {
  26. /*
  27. ** Run ESLint on save
  28. */
  29. extend (config, { isDev, isClient }) {
  30. if (isDev && isClient) {
  31. config.module.rules.push({
  32. enforce: 'pre',
  33. test: /\.(js|vue)$/,
  34. loader: 'eslint-loader',
  35. exclude: /(node_modules)/
  36. })
  37. }
  38. },
  39. vendor: [
  40. 'axios',
  41. 'element-ui'
  42. ],
  43. babel: {
  44. presets: [
  45. ["env", {
  46. targets: {
  47. 'node': 'current'
  48. },
  49. useBuiltIns: true,
  50. debug: !isProdMode,
  51. include: [
  52. 'transform-async-to-generator'
  53. ]
  54. }]
  55. ],
  56. plugins: [
  57. ['transform-object-rest-spread', { useBuiltIns: true }],
  58. ['syntax-dynamic-import'],
  59. ['transform-runtime'],
  60. ["component", { libraryName: "element-ui", styleLibraryName: "theme-chalk" }]
  61. ]
  62. }
  63. },
  64. css: [
  65. 'element-ui/lib/theme-chalk/reset.css',
  66. 'element-ui/lib/theme-chalk/index.css',
  67. '@/assets/css/main.scss'
  68. ],
  69. dev: !isProdMode,
  70. env: {
  71. baseUrl
  72. },
  73. plugins: [
  74. {
  75. src: '~plugins/axios.js'
  76. },
  77. '@/plugins/element-ui'
  78. ],
  79. serverMiddleware: [
  80. '~/api/proxy'
  81. ],
  82. proxyTable: [
  83. "/api/**"
  84. ]
  85. }