Browse Source
Merge remote-tracking branch 'origin/seo' into pgsqlDevelop
Merge remote-tracking branch 'origin/seo' into pgsqlDevelop
# Conflicts: # web/package.jsonmain
蒋吉兆
3 years ago
6 changed files with 199 additions and 78 deletions
-
13web/index.html
-
55web/package.json
-
47web/src/core/config.js
-
8web/src/view/login/index.vue
-
141web/vite.config.js
-
13web/yarn.lock
@ -1,15 +1,18 @@ |
|||
|
|||
<!DOCTYPE html> |
|||
<html lang="en"> |
|||
|
|||
<head> |
|||
<meta charset="utf-8"> |
|||
<meta http-equiv="X-UA-Compatible" content="IE=edge"> |
|||
<meta name="viewport" content="width=device-width,initial-scale=1.0"> |
|||
<meta content="Gin,Vue,Admin.Gin-Vue-Admin,GVA,gin-vue-admin,后台管理框架,vue后台管理框架,gin-vue-admin文档,gin-vue-admin首页,gin-vue-admin" name="keywords" /> |
|||
<link rel="icon" href="favicon.ico"> |
|||
<title></title> |
|||
</head> |
|||
</head> |
|||
|
|||
<body> |
|||
<div id="app"></div> |
|||
<script type="module" src="./src/main.js"></script> |
|||
<div id="app"></div> |
|||
<script type="module" src="./src/main.js"></script> |
|||
</body> |
|||
</html> |
|||
|
|||
</html> |
@ -1,83 +1,92 @@ |
|||
/* eslint-disable */ |
|||
import legacyPlugin from '@vitejs/plugin-legacy'; |
|||
// import usePluginImport from 'vite-plugin-importer';
|
|||
import { viteLogo } from './src/core/config' |
|||
import Banner from 'vite-plugin-banner' |
|||
import * as path from 'path'; |
|||
import * as dotenv from 'dotenv'; |
|||
import * as fs from 'fs'; |
|||
import vuePlugin from '@vitejs/plugin-vue'; |
|||
// @see https://cn.vitejs.dev/config/
|
|||
export default ({ |
|||
command, |
|||
mode |
|||
command, |
|||
mode |
|||
}) => { |
|||
let NODE_ENV = process.env.NODE_ENV || 'development' |
|||
let envFiles=[ |
|||
`.env.${NODE_ENV}` |
|||
] |
|||
for (const file of envFiles) { |
|||
const envConfig = dotenv.parse(fs.readFileSync(file)) |
|||
for (const k in envConfig) { |
|||
process.env[k] = envConfig[k] |
|||
} |
|||
} |
|||
let NODE_ENV = process.env.NODE_ENV || 'development' |
|||
let envFiles = [ |
|||
`.env.${NODE_ENV}` |
|||
] |
|||
for (const file of envFiles) { |
|||
const envConfig = dotenv.parse(fs.readFileSync(file)) |
|||
for (const k in envConfig) { |
|||
process.env[k] = envConfig[k] |
|||
} |
|||
} |
|||
|
|||
let rollupOptions = {}; |
|||
viteLogo(process.env) |
|||
|
|||
let timestamp = Date.parse(new Date()) |
|||
|
|||
let optimizeDeps = {}; |
|||
let rollupOptions = { |
|||
output: { |
|||
entryFileNames: `gva/gin-vue-admin-[name].${timestamp}.js`, |
|||
chunkFileNames: `js/gin-vue-admin-[name].${timestamp}.js`, |
|||
assetFileNames: `assets/gin-vue-admin-[name].${timestamp}.[ext]` |
|||
} |
|||
}; |
|||
|
|||
let optimizeDeps = {}; |
|||
|
|||
let alias = { |
|||
'@': path.resolve(__dirname, './src'), |
|||
'vue$': 'vue/dist/vue.runtime.esm-bundler.js', |
|||
} |
|||
let alias = { |
|||
'@': path.resolve(__dirname, './src'), |
|||
'vue$': 'vue/dist/vue.runtime.esm-bundler.js', |
|||
} |
|||
|
|||
let esbuild = {} |
|||
let esbuild = {} |
|||
|
|||
return { |
|||
base: './', // index.html文件所在位置
|
|||
root: './', // js导入的资源路径,src
|
|||
resolve: { |
|||
alias, |
|||
}, |
|||
define: { |
|||
'process.env': {} |
|||
}, |
|||
server: { |
|||
open:true, |
|||
port: process.env.VITE_CLI_PORT, |
|||
proxy:{ |
|||
// 把key的路径代理到target位置
|
|||
// detail: https://cli.vuejs.org/config/#devserver-proxy
|
|||
[process.env.VITE_BASE_API]: { // 需要代理的路径 例如 '/api'
|
|||
target: `${process.env.VITE_BASE_PATH}:${process.env.VITE_SERVER_PORT}/`, // 代理到 目标路径
|
|||
changeOrigin: true, |
|||
rewrite: path => path.replace(new RegExp('^' + process.env.VITE_BASE_API), ''), |
|||
} |
|||
}, |
|||
}, |
|||
build: { |
|||
target: 'es2015', |
|||
minify: 'terser', // 是否进行压缩,boolean | 'terser' | 'esbuild',默认使用terser
|
|||
manifest: false, // 是否产出maifest.json
|
|||
sourcemap: false, // 是否产出soucemap.json
|
|||
outDir: 'dist', // 产出目录
|
|||
rollupOptions, |
|||
}, |
|||
esbuild, |
|||
optimizeDeps, |
|||
plugins: [ |
|||
legacyPlugin({ |
|||
targets: ['Android > 39', 'Chrome >= 60', 'Safari >= 10.1', 'iOS >= 10.3', 'Firefox >= 54', 'Edge >= 15'], |
|||
}), vuePlugin(), |
|||
], |
|||
css: { |
|||
preprocessorOptions: { |
|||
less: { |
|||
// 支持内联 JavaScript
|
|||
javascriptEnabled: true, |
|||
} |
|||
} |
|||
}, |
|||
} |
|||
return { |
|||
base: './', // index.html文件所在位置
|
|||
root: './', // js导入的资源路径,src
|
|||
resolve: { |
|||
alias, |
|||
}, |
|||
define: { |
|||
'process.env': {} |
|||
}, |
|||
server: { |
|||
open: true, |
|||
port: process.env.VITE_CLI_PORT, |
|||
proxy: { |
|||
// 把key的路径代理到target位置
|
|||
// detail: https://cli.vuejs.org/config/#devserver-proxy
|
|||
[process.env.VITE_BASE_API]: { // 需要代理的路径 例如 '/api'
|
|||
target: `${process.env.VITE_BASE_PATH}:${process.env.VITE_SERVER_PORT}/`, // 代理到 目标路径
|
|||
changeOrigin: true, |
|||
rewrite: path => path.replace(new RegExp('^' + process.env.VITE_BASE_API), ''), |
|||
} |
|||
}, |
|||
}, |
|||
build: { |
|||
target: 'es2015', |
|||
minify: 'terser', // 是否进行压缩,boolean | 'terser' | 'esbuild',默认使用terser
|
|||
manifest: false, // 是否产出maifest.json
|
|||
sourcemap: false, // 是否产出soucemap.json
|
|||
outDir: 'dist', // 产出目录
|
|||
rollupOptions, |
|||
}, |
|||
esbuild, |
|||
optimizeDeps, |
|||
plugins: [ |
|||
legacyPlugin({ |
|||
targets: ['Android > 39', 'Chrome >= 60', 'Safari >= 10.1', 'iOS >= 10.3', 'Firefox >= 54', 'Edge >= 15'], |
|||
}), vuePlugin(), [Banner(`\n Build based on gin-vue-admin \n Time : ${timestamp}`)] |
|||
], |
|||
css: { |
|||
preprocessorOptions: { |
|||
less: { |
|||
// 支持内联 JavaScript
|
|||
javascriptEnabled: true, |
|||
} |
|||
} |
|||
}, |
|||
} |
|||
} |
Write
Preview
Loading…
Cancel
Save
Reference in new issue