136 lines
3.3 KiB
JavaScript
136 lines
3.3 KiB
JavaScript
module.exports = {
|
|
// Global page headers: https://go.nuxtjs.dev/config-head
|
|
ssr: false,
|
|
head: {
|
|
titleTemplate: '%s',
|
|
title: 'FEMS',
|
|
htmlAttrs: {
|
|
lang: 'ko',
|
|
},
|
|
meta: [
|
|
{ charset: 'utf-8' },
|
|
{ name: 'viewport', content: 'width=device-width, initial-scale=1' },
|
|
{ hid: 'description', name: 'description', content: '' },
|
|
],
|
|
link: [
|
|
// { rel: "stylesheet", type: "text/css", href: "assets/css/SpoqaHanSansNeo.css" },
|
|
{ rel: 'icon', type: 'image/x-icon', href: '/skfavicon.ico' },
|
|
],
|
|
},
|
|
|
|
// Global CSS: https://go.nuxtjs.dev/config-css
|
|
css: ['~assets/scss/common.scss', '~assets/css/SpoqaHanSansNeo.css','~assets/css/Oxanium.css'],
|
|
|
|
// Plugins to run before rendering page: https://go.nuxtjs.dev/config-plugins
|
|
plugins: [
|
|
'~/plugins/axios',
|
|
'~/plugins/eChart.js',
|
|
'~/plugins/grid',
|
|
'~/plugins/vue-fullscreen',
|
|
'~/plugins/jqxGrid',
|
|
'~/plugins/routerTab',
|
|
'~/plugins/vCalendar',
|
|
'~/plugins/datepicker',
|
|
'~/plugins/message',
|
|
'~/plugins/ant-design-vue'
|
|
],
|
|
router: {
|
|
middleware: ['middleRouter'],
|
|
extendRoutes(routes, resolve) {
|
|
// add Iframe route
|
|
routes.push({
|
|
name: 'iframe',
|
|
path: '/iframe/:src/:title?/:icon?',
|
|
component: resolve(__dirname, 'pages/-Iframe.js'),
|
|
props: true,
|
|
});
|
|
},
|
|
},
|
|
|
|
// Auto import components: https://go.nuxtjs.dev/config-components
|
|
components: true,
|
|
|
|
// Modules for dev and build (recommended): https://go.nuxtjs.dev/config-modules
|
|
buildModules: [
|
|
// https://go.nuxtjs.dev/vuetify
|
|
'@nuxtjs/vuetify',
|
|
],
|
|
|
|
// Modules: https://go.nuxtjs.dev/config-modules
|
|
modules: ['@nuxtjs/axios', '@nuxtjs/dayjs', '@nuxtjs/style-resources' ],
|
|
styleResources: {
|
|
scss: ['./assets/scss/*.scss'],
|
|
},
|
|
proxy: {
|
|
"/api/": {
|
|
target: "http://0.0.0.0:9999/",
|
|
//target: "http://192.168.0.152:8082/",
|
|
pathRewrite: {
|
|
"^/api/": ""
|
|
}
|
|
}
|
|
},
|
|
axios: {
|
|
//baseURL: "http://dotest.kfems.kr:9997",
|
|
proxy: true,
|
|
headers: {
|
|
common: {
|
|
'X-Requested-With': 'XMLHttpRequest',
|
|
},
|
|
},
|
|
},
|
|
// Optional
|
|
dayjs: {
|
|
locales: ['ko', 'en'],
|
|
defaultLocale: 'ko',
|
|
defaultTimeZone: 'Asia/Seoul',
|
|
plugins: [
|
|
'utc', // import 'dayjs/plugin/utc'
|
|
'timezone', // import 'dayjs/plugin/timezone'
|
|
], // Your Day.js plugin
|
|
},
|
|
module: {
|
|
// mode: 'spa', //'spa': No server-side rendering (only client-side navigation) //'universal': Isomorphic application (server-side rendering + client-side navigation)
|
|
rules: [
|
|
{
|
|
test: /\.m?js$/,
|
|
exclude: /node_modules/,
|
|
use: {
|
|
loader: 'babel-loader',
|
|
options: {
|
|
presets: [['@babel/preset-env', { targets: 'defaults' }]],
|
|
plugins: ['@babel/plugin-proposal-class-properties'],
|
|
},
|
|
},
|
|
},
|
|
],
|
|
},
|
|
googleFonts: {
|
|
families: {
|
|
Oxanium: [900], // You can add more weights if needed
|
|
},
|
|
display: 'swap',
|
|
},
|
|
// Vuetify module configuration: https://go.nuxtjs.dev/config-vuetify
|
|
vuetify: {
|
|
lang: {
|
|
locales: ['ko', 'en'],
|
|
current: 'ko',
|
|
},
|
|
customVariables: ['~/assets/variables.scss'],
|
|
treeShake: true,
|
|
optionsPath: '~/plugins/vuetify.js',
|
|
},
|
|
|
|
// Build Configuration: https://go.nuxtjs.dev/config-build
|
|
build: {
|
|
transpile: [/echarts/, /zrender/, /vue-router-tab/],
|
|
vendor: ['@toast-ui/vue-grid'],
|
|
styleResources: {
|
|
scss: './assets/scss/**/*.scss',
|
|
},
|
|
publicPath: '/_nuxt/comm/',
|
|
cache: true
|
|
},
|
|
};
|