提交 4dec6918 authored 作者: 王鹏飞's avatar 王鹏飞

vite

上级 6570157e
VITE_LOGIN_URL=https://login.ezijing.com/auth/login/index
VITE_PC_PREVIEW_URL=https://shop.ezijing.com
VITE_H5_PREVIEW_URL=https://h5-shop.ezijing.com
VITE_LOGIN_URL=https://login2.ezijing.com/auth/login/index
VITE_PC_PREVIEW_URL=https://shop2.ezijing.com
VITE_H5_PREVIEW_URL=https://h5-shop2.ezijing.com
VITE_LOGIN_URL=https://login2.ezijing.com/auth/login/index
VITE_PC_PREVIEW_URL=https://shop2.ezijing.com
VITE_H5_PREVIEW_URL=https://h5-shop2.ezijing.com
......@@ -17,6 +17,7 @@
</head>
<body>
<div id="app"></div>
<script type="module" src="/src/main.js"></script>
<script src="https://webapp-pub.ezijing.com/plugins/tinymce/tinymce.min.js"></script>
<script
type="text/javascript"
......
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -6,8 +6,9 @@
"scripts": {
"lint": "eslint --ext .js --ext .jsx --ext .vue src/",
"lint:fix": "eslint --fix --ext .js --ext .jsx --ext .vue src/",
"dev": "cross-env NODE_ENV=development node build/getSSL.js && cross-env NODE_ENV=development SERVER_PORT=3001 webpack-dev-server --inline --progress --config build/webpack.client.conf.js",
"build:test": "npm run check:node && cross-env NODE_ENV=test webpack --progress --config build/webpack.client.conf.js && cross-env NODE_ENV=test node ./build/uploadAliyunCDN.js",
"dev": "vite",
"build": "vite build --mode test",
"build:test": "vite build --mode test",
"build:pro": "npm run check:node && cross-env NODE_ENV=production webpack --progress --config build/webpack.client.conf.js && cross-env NODE_ENV=production node ./build/uploadAliyunCDN.js",
"check:node": "node build/checkNodeVersion.js"
},
......@@ -63,6 +64,8 @@
"style-loader": "^2.0.0",
"url-loader": "^4.1.1",
"vconsole-webpack-plugin": "^1.5.2",
"vite": "^2.4.1",
"vite-plugin-vue2": "^1.7.2",
"webpack": "^4.44.2",
"webpack-cli": "^3.3.12",
"webpack-dev-server": "^3.11.0",
......
......@@ -5,7 +5,7 @@
</app-upload>
</template>
<script>
import AppUpload from './upload'
import AppUpload from './upload.vue'
export default {
name: 'AppUploadImage',
components: { AppUpload },
......
......@@ -5,7 +5,7 @@
</app-upload>
</template>
<script>
import AppUpload from './upload'
import AppUpload from './upload.vue'
export default {
name: 'AppUploadImage',
components: { AppUpload },
......
......@@ -28,7 +28,7 @@ export default {
methods: {
logout() {
this.$store.dispatch('logout').then(() => {
window.location.href = `${webConf.others.loginUrl}?rd=${encodeURIComponent(window.location.href)}`
window.location.href = `${import.meta.env.VITE_LOGIN_URL}?rd=${encodeURIComponent(window.location.href)}`
})
}
}
......
......@@ -8,7 +8,7 @@
</template>
<script>
import MessageItem from './messageItem'
import MessageItem from './messageItem.vue'
export default {
props: { value: { type: Array, default: () => [] } },
components: { MessageItem },
......
......@@ -16,7 +16,7 @@
</template>
<script>
import skuGroup from './skuGroup'
import skuGroup from './skuGroup.vue'
import { getSkuNameList } from '@/api/goods'
export default {
......
......@@ -34,13 +34,13 @@ export default {
return this.$store.state.shop
},
shopUrl() {
return `${webConf.others.h5PreviewUrl}/shop?shop_id=${this.shopId}`
return `${import.meta.env.VITE_H5_PREVIEW_URL}/shop?shop_id=${this.shopId}`
}
},
methods: {
logout() {
this.$store.dispatch('logout').then(() => {
window.location.href = `${webConf.others.loginUrl}?rd=${encodeURIComponent(window.location.href)}`
window.location.href = `${import.meta.env.VITE_LOGIN_URL}?rd=${encodeURIComponent(window.location.href)}`
})
}
}
......
......@@ -7,9 +7,9 @@
</template>
<script>
import AppSidebar from './sidebar'
import AppHeader from './header'
import AppMain from './main'
import AppSidebar from './sidebar.vue'
import AppHeader from './header.vue'
import AppMain from './main.vue'
export default {
name: 'AppLayout',
......
......@@ -12,7 +12,7 @@
</template>
<script>
import AppBreadcrumb from './breadcrumb'
import AppBreadcrumb from './breadcrumb.vue'
export default {
name: 'AppMain',
props: { hasBreadcrumb: { type: Boolean, default: true } },
......
......@@ -33,9 +33,9 @@
</template>
<script>
import TableList from '@/components/base/tableList'
import TableList from '@/components/base/tableList.vue'
import { getGoodsList } from '@/api/goods'
import GoodsItem from '@/components/goods/goodsItem'
import GoodsItem from '@/components/goods/goodsItem.vue'
export default {
props: { multiple: { type: Boolean, default: false } },
......
......@@ -137,13 +137,13 @@
<script>
// 组件
import AppCard from '@/components/base/card'
import AppUpload from '@/components/base/upload'
import AppUploadVideo from '@/components/base/uploadVideo'
import Sku from '@/components/goods/sku'
import SkuView from '@/components/goods/skuView'
import Message from '@/components/goods/message'
import Editor from '@/components/tinymce'
import AppCard from '@/components/base/card.vue'
import AppUpload from '@/components/base/upload.vue'
import AppUploadVideo from '@/components/base/uploadVideo.vue'
import Sku from '@/components/goods/sku.vue'
import SkuView from '@/components/goods/skuView.vue'
import Message from '@/components/goods/message.vue'
import Editor from '@/components/tinymce/index.vue'
// 接口
import { addGoods, updateGoods, getGoodsList, getSkuList } from '@/api/goods'
export default {
......
......@@ -50,10 +50,10 @@
<script>
// 组件
import TableList from '@/components/base/tableList'
import AppCard from '@/components/base/card'
import ShareQrcode from '@/components/goods/shareQrcode'
import GoodsItem from '@/components/goods/goodsItem'
import TableList from '@/components/base/tableList.vue'
import AppCard from '@/components/base/card.vue'
import ShareQrcode from '@/components/goods/shareQrcode.vue'
import GoodsItem from '@/components/goods/goodsItem.vue'
// 接口
import { getGoodsList, deleteGoods, updateGoodsStatus } from '@/api/goods'
......@@ -161,7 +161,7 @@ export default {
},
// 推广
handlePromote(row) {
this.shareUrl = `${webConf.others.h5PreviewUrl}/buy?shop_id=${row.shop_id}&spu_id=${row.spu_id}`
this.shareUrl = `${import.meta.env.VITE_H5_PREVIEW_URL}/buy?shop_id=${row.shop_id}&spu_id=${row.spu_id}`
this.shareDialogVisible = true
},
// 复制
......
......@@ -29,10 +29,10 @@
<script>
// 组件
import AppCard from '@/components/base/card'
import TableList from '@/components/base/tableList'
import ShareQrcode from '@/components/goods/shareQrcode'
import GroupEdit from './edit'
import AppCard from '@/components/base/card.vue'
import TableList from '@/components/base/tableList.vue'
import ShareQrcode from '@/components/goods/shareQrcode.vue'
import GroupEdit from './edit.vue'
// 接口
import { getGroupList, deleteGroup } from '@/api/goods'
......@@ -98,7 +98,7 @@ export default {
},
// 推广
handlePromote(row) {
this.shareUrl = `${webConf.others.h5PreviewUrl}/shop?shop_id=${row.shop_id}&group_id=${row.group_id}`
this.shareUrl = `${import.meta.env.VITE_H5_PREVIEW_URL}/shop?shop_id=${row.shop_id}&group_id=${row.group_id}`
this.shareDialogVisible = true
}
},
......
......@@ -54,10 +54,10 @@
</template>
<script>
import AppCard from '@/components/base/card'
import UserAutocomplete from '@/components/base/userAutocomplete'
import OrderAutocomplete from '@/components/order/orderAutocomplete'
import SelectGoods from '@/components/order/selectGoods'
import AppCard from '@/components/base/card.vue'
import UserAutocomplete from '@/components/base/userAutocomplete.vue'
import OrderAutocomplete from '@/components/order/orderAutocomplete.vue'
import SelectGoods from '@/components/order/selectGoods.vue'
import { addOrder, getSkuList } from '@/api/order'
export default {
components: { AppCard, UserAutocomplete, OrderAutocomplete, SelectGoods },
......
......@@ -105,9 +105,9 @@
</template>
<script>
import AppCard from '@/components/base/card'
import TableList from '@/components/base/tableList'
import GoodsItem from '@/components/goods/goodsItem'
import AppCard from '@/components/base/card.vue'
import TableList from '@/components/base/tableList.vue'
import GoodsItem from '@/components/goods/goodsItem.vue'
import { getOrderList, getOrderLogs } from '@/api/order'
export default {
......
......@@ -81,9 +81,9 @@
<script>
import dayjs from 'dayjs'
// 组件
import TableList from '@/components/base/tableList'
import AppCard from '@/components/base/card'
import GoodsItem from '@/components/goods/goodsItem'
import TableList from '@/components/base/tableList.vue'
import AppCard from '@/components/base/card.vue'
import GoodsItem from '@/components/goods/goodsItem.vue'
// 接口
import { getOrderSearchList } from '@/api/order'
export default {
......
......@@ -28,10 +28,10 @@ export default {
return this.$route.query.id
},
pcPreviewUrl() {
return `${webConf.others.pcPreviewUrl}/buy?shop_id=${this.shopId}&spu_id=${this.goodsId}`
return `${import.meta.env.VITE_PC_PREVIEW_URL}/buy?shop_id=${this.shopId}&spu_id=${this.goodsId}`
},
h5PreviewUrl() {
return `${webConf.others.h5PreviewUrl}/buy?shop_id=${this.shopId}&spu_id=${this.goodsId}`
return `${import.meta.env.VITE_H5_PREVIEW_URL}/buy?shop_id=${this.shopId}&spu_id=${this.goodsId}`
}
},
methods: {
......
......@@ -33,7 +33,7 @@
</template>
<script>
import AppCard from '@/components/base/card'
import AppCard from '@/components/base/card.vue'
import { updateShop } from '@/api/shop'
export default {
components: { AppCard },
......
......@@ -15,7 +15,7 @@
</template>
<script>
import AppCard from '@/components/base/card'
import AppCard from '@/components/base/card.vue'
import { updateShop } from '@/api/shop'
export default {
components: { AppCard },
......
......@@ -22,8 +22,8 @@
</template>
<script>
import AppCard from '@/components/base/card'
import SkuGroup from '@/components/setting/skuGroup'
import AppCard from '@/components/base/card.vue'
import SkuGroup from '@/components/setting/skuGroup.vue'
import { getSkuNameList, addSku } from '@/api/goods'
export default {
components: { AppCard, SkuGroup },
......
......@@ -68,8 +68,8 @@
</template>
<script>
import AppCard from '@/components/base/card'
import AppUploadImage from '@/components/base/uploadImage'
import AppCard from '@/components/base/card.vue'
import AppUploadImage from '@/components/base/uploadImage.vue'
import { updateShop } from '@/api/shop'
export default {
components: { AppCard, AppUploadImage },
......
......@@ -75,8 +75,8 @@
<script>
// 组件
import PageMain from '@/components/common/pageMain'
import AppUploadImage from '@/components/base/uploadImage'
import PageMain from '@/components/common/pageMain.vue'
import AppUploadImage from '@/components/base/uploadImage.vue'
// 接口
import { addShop } from '@/api/shop'
......
......@@ -29,7 +29,7 @@
<script>
import dayjs from 'dayjs'
// 组件
import PageMain from '@/components/common/pageMain'
import PageMain from '@/components/common/pageMain.vue'
// 接口
import { getShopList } from '@/api/shop'
......
/* layout */
import Layout from '@/components/layout/layout'
import Layout from '@/components/layout/layout.vue'
export default [
{ path: '*', redirect: '/goods' },
......@@ -10,7 +10,7 @@ export default [
children: [
{
path: '',
component: () => import(/* webpackChunkName: "dashboard" */ '@/pages/dashboard/index'),
component: () => import(/* webpackChunkName: "dashboard" */ '@/pages/dashboard/index.vue'),
meta: { title: '概况' }
}
]
......@@ -18,12 +18,12 @@ export default [
// 店铺
{
path: '/shop',
component: () => import(/* webpackChunkName: "shop" */ '@/pages/shop/index'),
component: () => import(/* webpackChunkName: "shop" */ '@/pages/shop/index.vue'),
meta: { title: '选择店铺' }
},
{
path: '/shop/add',
component: () => import(/* webpackChunkName: "shop" */ '@/pages/shop/add'),
component: () => import(/* webpackChunkName: "shop" */ '@/pages/shop/add.vue'),
meta: { title: '新建店铺' }
},
// 商品管理
......@@ -35,25 +35,25 @@ export default [
{
name: 'goodsList',
path: '',
component: () => import(/* webpackChunkName: "goods" */ '@/pages/goods/goods/index'),
component: () => import(/* webpackChunkName: "goods" */ '@/pages/goods/goods/index.vue'),
meta: { title: '商品列表' }
},
{
name: 'goodsAdd',
path: 'add',
component: () => import(/* webpackChunkName: "goods" */ '@/pages/goods/goods/edit'),
component: () => import(/* webpackChunkName: "goods" */ '@/pages/goods/goods/edit.vue'),
meta: { title: '发布商品' }
},
{
name: 'goodsEdit',
path: 'edit/:id',
component: () => import(/* webpackChunkName: "goods" */ '@/pages/goods/goods/edit'),
component: () => import(/* webpackChunkName: "goods" */ '@/pages/goods/goods/edit.vue'),
props: { isEdit: true },
meta: { title: '编辑商品' }
},
{
path: 'group',
component: () => import(/* webpackChunkName: "goods-group" */ '@/pages/goods/group/index'),
component: () => import(/* webpackChunkName: "goods-group" */ '@/pages/goods/group/index.vue'),
meta: { title: '商品分组' }
}
]
......@@ -67,19 +67,19 @@ export default [
{
name: 'orderList',
path: '',
component: () => import(/* webpackChunkName: "order" */ '@/pages/order/index'),
component: () => import(/* webpackChunkName: "order" */ '@/pages/order/index.vue'),
meta: { title: '订单列表' }
},
{
name: 'orderDetail',
path: 'detail/:id',
component: () => import(/* webpackChunkName: "order" */ '@/pages/order/detail'),
component: () => import(/* webpackChunkName: "order" */ '@/pages/order/detail.vue'),
meta: { title: '订单详情' }
},
{
name: 'orderAdd',
path: 'add',
component: () => import(/* webpackChunkName: "order" */ '@/pages/order/add'),
component: () => import(/* webpackChunkName: "order" */ '@/pages/order/add.vue'),
meta: { title: '新增订单' }
}
]
......@@ -93,28 +93,28 @@ export default [
{ path: '', redirect: 'info' },
{
path: 'info',
component: () => import(/* webpackChunkName: "setting" */ '@/pages/setting/info'),
component: () => import(/* webpackChunkName: "setting" */ '@/pages/setting/info.vue'),
meta: { title: '店铺信息' }
},
{
path: 'general',
component: () => import(/* webpackChunkName: "setting" */ '@/pages/setting/general'),
component: () => import(/* webpackChunkName: "setting" */ '@/pages/setting/general.vue'),
meta: { title: '通用设置' }
},
{
path: 'contact',
component: () => import(/* webpackChunkName: "setting" */ '@/pages/setting/contact'),
component: () => import(/* webpackChunkName: "setting" */ '@/pages/setting/contact.vue'),
meta: { title: '联系我们' }
},
{
path: 'goods',
component: () => import(/* webpackChunkName: "setting" */ '@/pages/setting/goods'),
component: () => import(/* webpackChunkName: "setting" */ '@/pages/setting/goods.vue'),
meta: { title: '商品设置' }
}
]
},
{
path: '/preview',
component: () => import(/* webpackChunkName: "preview" */ '@/pages/preview')
component: () => import(/* webpackChunkName: "preview" */ '@/pages/preview.vue')
}
]
......@@ -53,7 +53,7 @@ httpRequest.interceptors.response.use(
const { status, message } = error.response.data
// 未登录
if (status === 403) {
window.location.href = `${webConf.others.loginUrl}?rd=${encodeURIComponent(window.location.href)}`
window.location.href = `${import.meta.env.VITE_LOGIN_URL}?rd=${encodeURIComponent(window.location.href)}`
} else {
Message.error(message || error.response.data)
}
......
......@@ -14,7 +14,7 @@ export default class BeforeEnter {
}
const isLogin = store.state.user.id || (await store.dispatch('checkLogin'))
if (!isLogin) {
window.location.href = `${webConf.others.loginUrl}?rd=${encodeURIComponent(window.location.href)}`
window.location.href = `${import.meta.env.VITE_LOGIN_URL}?rd=${encodeURIComponent(window.location.href)}`
return
}
next()
......
import fs from 'fs'
import path from 'path'
import { defineConfig } from 'vite'
import { createVuePlugin } from 'vite-plugin-vue2'
export default defineConfig({
plugins: [createVuePlugin()],
server: {
host: 'dev.ezijing.com',
https: {
key: fs.readFileSync(path.join(__dirname, './build/dev.ezijing.com.key')),
cert: fs.readFileSync(path.join(__dirname, './build/dev.ezijing.com.pem'))
},
proxy: {
'/api': 'https://shop-admin.ezijing.com'
}
},
resolve: {
alias: [
{
find: '@',
replacement: path.resolve(__dirname, 'src')
}
]
}
})
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论