mirror of
https://codeup.aliyun.com/67c68d4e484ca2f0a13ac3c1/ydc/jsowell-charger-web.git
synced 2026-05-17 16:28:41 +08:00
Merge branch 'dev' of http://192.168.2.2:8099/jsowell/jsowell-charger-web into dev
This commit is contained in:
@@ -24,3 +24,11 @@ export function getMerchantOrderReport(data) {
|
|||||||
data: data
|
data: data
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
// 汇付结算账号
|
||||||
|
export function selectSettleAccount(data) {
|
||||||
|
return request({
|
||||||
|
url: '/adapay/member/selectSettleAccount',
|
||||||
|
method: 'post',
|
||||||
|
data: data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|||||||
@@ -31,7 +31,7 @@
|
|||||||
|
|
||||||
<el-card class="box-card" shadow="hover">
|
<el-card class="box-card" shadow="hover">
|
||||||
<div style="margin: 12px 0">汇付结算账户</div>
|
<div style="margin: 12px 0">汇付结算账户</div>
|
||||||
<div style="margin: 12px 0" v-if="ruleForm.nickname !== ''">
|
<div style="margin: 12px 0" v-if="ruleForm.bankAcctType == null">
|
||||||
没有查询到汇付结算账户配置,请点击按钮创建汇付结算账户
|
没有查询到汇付结算账户配置,请点击按钮创建汇付结算账户
|
||||||
<!-- 刷新按钮 -->
|
<!-- 刷新按钮 -->
|
||||||
<el-button
|
<el-button
|
||||||
@@ -50,65 +50,65 @@
|
|||||||
class="demo-ruleForm"
|
class="demo-ruleForm"
|
||||||
v-else
|
v-else
|
||||||
>
|
>
|
||||||
<el-form-item label="银行账户类型" prop="bank_acct_type">
|
<el-form-item label="银行账户类型" prop="bankAcctType">
|
||||||
<el-radio-group v-model="ruleForm.bank_acct_type">
|
<el-radio-group v-model="ruleForm.bankAcctType">
|
||||||
<el-radio label="1">对公</el-radio>
|
<el-radio label="1">对公</el-radio>
|
||||||
<el-radio label="2">对私</el-radio>
|
<el-radio label="2">对私</el-radio>
|
||||||
</el-radio-group>
|
</el-radio-group>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="银行卡号" prop="card_id">
|
<el-form-item label="银行卡号" prop="cardId">
|
||||||
<el-input v-model="ruleForm.card_id"></el-input>
|
<el-input v-model="ruleForm.cardId"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="银行卡对应的户名" prop="card_name">
|
<el-form-item label="银行卡对应的户名" prop="cardName">
|
||||||
<el-input v-model="ruleForm.card_name"></el-input>
|
<el-input v-model="ruleForm.cardName"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item
|
<el-form-item
|
||||||
label="证件号"
|
label="证件号"
|
||||||
prop="cert_id"
|
prop="certId"
|
||||||
:rules="
|
:rules="
|
||||||
ruleForm.bank_acct_type === '2'
|
ruleForm.bankAcctType === '2'
|
||||||
? rules.cert_id
|
? rules.certId
|
||||||
: [{ required: false }]
|
: [{ required: false }]
|
||||||
"
|
"
|
||||||
>
|
>
|
||||||
<el-input v-model="ruleForm.cert_id"></el-input>
|
<el-input v-model="ruleForm.certId"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item
|
<el-form-item
|
||||||
label="证件类型"
|
label="证件类型"
|
||||||
prop="cert_type"
|
prop="certType"
|
||||||
:rules="
|
:rules="
|
||||||
ruleForm.bank_acct_type === '2'
|
ruleForm.bankAcctType === '2'
|
||||||
? rules.cert_type
|
? rules.certType
|
||||||
: [{ required: false }]
|
: [{ required: false }]
|
||||||
"
|
"
|
||||||
>
|
>
|
||||||
<el-input v-model="ruleForm.cert_type"></el-input>
|
<el-input v-model="ruleForm.certType"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="手机号" prop="tel_no">
|
<el-form-item label="手机号" prop="telNo">
|
||||||
<el-input v-model="ruleForm.tel_no"></el-input>
|
<el-input v-model="ruleForm.telNo"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item
|
<el-form-item
|
||||||
label="银行编码"
|
label="银行编码"
|
||||||
prop="bank_code"
|
prop="bankCode"
|
||||||
:rules="
|
:rules="
|
||||||
ruleForm.bank_acct_type === '1'
|
ruleForm.bankAcctType === '1'
|
||||||
? rules.bank_code
|
? rules.bankCode
|
||||||
: [{ required: false }]
|
: [{ required: false }]
|
||||||
"
|
"
|
||||||
>
|
>
|
||||||
<el-input v-model="ruleForm.bank_code"></el-input>
|
<el-input v-model="ruleForm.bankCode"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="开户银行名称" prop="bank_name">
|
<el-form-item label="开户银行名称" prop="bankName">
|
||||||
<el-input v-model="ruleForm.bank_name"></el-input>
|
<el-input v-model="ruleForm.bankName"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item
|
<el-form-item
|
||||||
label="银行账户开户银行所在省份编码"
|
label="银行账户开户银行所在省份编码"
|
||||||
prop="prov_code"
|
prop="provCode"
|
||||||
:rules="
|
:rules="
|
||||||
ruleForm.bank_acct_type === '1'
|
ruleForm.bankAcctType === '1'
|
||||||
? rules.prov_code
|
? rules.provCode
|
||||||
: [{ required: false }]
|
: [{ required: false }]
|
||||||
"
|
"
|
||||||
>
|
>
|
||||||
@@ -118,18 +118,18 @@
|
|||||||
@change="handleChange"
|
@change="handleChange"
|
||||||
:props="cateProps"
|
:props="cateProps"
|
||||||
></el-cascader>
|
></el-cascader>
|
||||||
<!-- <el-input v-model="ruleForm.prov_code"></el-input> -->
|
<!-- <el-input v-model="ruleForm.provCode"></el-input> -->
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<!-- <el-form-item
|
<!-- <el-form-item
|
||||||
label="银行账户开户银行所在地区编码"
|
label="银行账户开户银行所在地区编码"
|
||||||
prop="area_code"
|
prop="areaCode"
|
||||||
:rules="
|
:rules="
|
||||||
ruleForm.bank_acct_type === '1'
|
ruleForm.bankAcctType === '1'
|
||||||
? rules.area_code
|
? rules.areaCode
|
||||||
: [{ required: false }]
|
: [{ required: false }]
|
||||||
"
|
"
|
||||||
>
|
>
|
||||||
<el-input v-model="ruleForm.area_code"></el-input>
|
<el-input v-model="ruleForm.areaCode"></el-input>
|
||||||
</el-form-item> -->
|
</el-form-item> -->
|
||||||
<el-form-item>
|
<el-form-item>
|
||||||
<el-button type="primary" @click="submitForm('ruleForm')"
|
<el-button type="primary" @click="submitForm('ruleForm')"
|
||||||
@@ -190,81 +190,87 @@
|
|||||||
label-width="250px"
|
label-width="250px"
|
||||||
class="demo-ruleForm"
|
class="demo-ruleForm"
|
||||||
>
|
>
|
||||||
<el-form-item label="银行账户类型" prop="bank_acct_type">
|
<el-form-item label="银行账户类型" prop="bankAcctType">
|
||||||
<el-radio-group v-model="ruleForm.bank_acct_type">
|
<el-radio-group v-model="ruleForm.bankAcctType">
|
||||||
<el-radio label="1">对公</el-radio>
|
<el-radio label="1">对公</el-radio>
|
||||||
<el-radio label="2">对私</el-radio>
|
<el-radio label="2">对私</el-radio>
|
||||||
</el-radio-group>
|
</el-radio-group>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="银行卡号" prop="card_id">
|
<el-form-item label="银行卡号" prop="cardId">
|
||||||
<el-input v-model="ruleForm.card_id"></el-input>
|
<el-input v-model="ruleForm.cardId"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="银行卡对应的户名" prop="card_name">
|
<el-form-item label="银行卡对应的户名" prop="cardName">
|
||||||
<el-input v-model="ruleForm.card_name"></el-input>
|
<el-input v-model="ruleForm.cardName"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item
|
<el-form-item
|
||||||
label="证件号"
|
label="证件号"
|
||||||
prop="cert_id"
|
prop="certId"
|
||||||
:rules="
|
:rules="
|
||||||
ruleForm.bank_acct_type === '2'
|
ruleForm.bankAcctType === '2'
|
||||||
? rules.cert_id
|
? rules.certId
|
||||||
: [{ required: false }]
|
: [{ required: false }]
|
||||||
"
|
"
|
||||||
>
|
>
|
||||||
<el-input v-model="ruleForm.cert_id"></el-input>
|
<el-input v-model="ruleForm.certId"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item
|
<el-form-item
|
||||||
label="证件类型"
|
label="证件类型"
|
||||||
prop="cert_type"
|
prop="certType"
|
||||||
:rules="
|
:rules="
|
||||||
ruleForm.bank_acct_type === '2'
|
ruleForm.bankAcctType === '2'
|
||||||
? rules.cert_type
|
? rules.certType
|
||||||
: [{ required: false }]
|
: [{ required: false }]
|
||||||
"
|
"
|
||||||
>
|
>
|
||||||
<el-input v-model="ruleForm.cert_type"></el-input>
|
<el-input v-model="ruleForm.certType"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="手机号" prop="tel_no">
|
<el-form-item label="手机号" prop="telNo">
|
||||||
<el-input v-model="ruleForm.tel_no"></el-input>
|
<el-input v-model="ruleForm.telNo"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item
|
<el-form-item
|
||||||
label="银行编码"
|
label="银行编码"
|
||||||
prop="bank_code"
|
prop="bankCode"
|
||||||
:rules="
|
:rules="
|
||||||
ruleForm.bank_acct_type === '1'
|
ruleForm.bankAcctType === '1'
|
||||||
? rules.bank_code
|
? rules.bankCode
|
||||||
: [{ required: false }]
|
: [{ required: false }]
|
||||||
"
|
"
|
||||||
>
|
>
|
||||||
<el-input v-model="ruleForm.bank_code"></el-input>
|
<el-input v-model="ruleForm.bankCode"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="开户银行名称" prop="bank_name">
|
<el-form-item label="开户银行名称" prop="bankName">
|
||||||
<el-input v-model="ruleForm.bank_name"></el-input>
|
<el-input v-model="ruleForm.bankName"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item
|
<el-form-item
|
||||||
label="银行账户开户银行所在城市编码"
|
label="银行账户开户银行所在省份编码"
|
||||||
prop="prov_code"
|
prop="provCode"
|
||||||
:rules="
|
:rules="
|
||||||
ruleForm.bank_acct_type === '1'
|
ruleForm.bankAcctType === '1'
|
||||||
? rules.prov_code
|
? rules.provCode
|
||||||
: [{ required: false }]
|
: [{ required: false }]
|
||||||
"
|
"
|
||||||
>
|
>
|
||||||
<el-input v-model="ruleForm.prov_code"></el-input>
|
<el-cascader
|
||||||
|
v-model="value"
|
||||||
|
:options="options"
|
||||||
|
@change="handleChange"
|
||||||
|
:props="cateProps"
|
||||||
|
></el-cascader>
|
||||||
|
<!-- <el-input v-model="ruleForm.provCode"></el-input> -->
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item
|
<!-- <el-form-item
|
||||||
label="银行账户开户银行所在地区编码"
|
label="银行账户开户银行所在地区编码"
|
||||||
prop="area_code"
|
prop="areaCode"
|
||||||
:rules="
|
:rules="
|
||||||
ruleForm.bank_acct_type === '1'
|
ruleForm.bankAcctType === '1'
|
||||||
? rules.area_code
|
? rules.areaCode
|
||||||
: [{ required: false }]
|
: [{ required: false }]
|
||||||
"
|
"
|
||||||
>
|
>
|
||||||
<el-input v-model="ruleForm.area_code"></el-input>
|
<el-input v-model="ruleForm.areaCode"></el-input>
|
||||||
</el-form-item>
|
</el-form-item> -->
|
||||||
<el-form-item>
|
<el-form-item>
|
||||||
<el-button type="primary" @click="submitForm('ruleForm')"
|
<el-button type="primary" @click="submitForm('ruleForm')"
|
||||||
>提交</el-button
|
>提交</el-button
|
||||||
@@ -278,7 +284,7 @@
|
|||||||
<script>
|
<script>
|
||||||
import {
|
import {
|
||||||
selectAdapayMember,
|
selectAdapayMember,
|
||||||
createAdapayMember,
|
createAdapayMember,selectSettleAccount
|
||||||
} from "@/api/adapayMember/adapayMember";
|
} from "@/api/adapayMember/adapayMember";
|
||||||
export default {
|
export default {
|
||||||
props: ["merchantId"],
|
props: ["merchantId"],
|
||||||
@@ -295,16 +301,16 @@ export default {
|
|||||||
email: "",
|
email: "",
|
||||||
gender: "",
|
gender: "",
|
||||||
location: "",
|
location: "",
|
||||||
card_id: "",
|
cardId: "",
|
||||||
card_name: "",
|
cardName: "",
|
||||||
cert_id: "",
|
certId: "",
|
||||||
cert_type: "",
|
certType: "",
|
||||||
tel_no: "",
|
telNo: "",
|
||||||
bank_code: "",
|
bankCode: "",
|
||||||
bank_name: "",
|
bankName: "",
|
||||||
bank_acct_type: "",
|
bankAcctType: "",
|
||||||
prov_code: "",
|
provCode: "",
|
||||||
area_code: "",
|
areaCode: "",
|
||||||
merchantId: this.merchantId,
|
merchantId: this.merchantId,
|
||||||
},
|
},
|
||||||
rules: {
|
rules: {
|
||||||
@@ -341,7 +347,7 @@ export default {
|
|||||||
trigger: "blur",
|
trigger: "blur",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
card_id: [
|
cardId: [
|
||||||
{
|
{
|
||||||
required: true,
|
required: true,
|
||||||
message: "请填写银行卡号",
|
message: "请填写银行卡号",
|
||||||
@@ -353,14 +359,14 @@ export default {
|
|||||||
trigger: "blur",
|
trigger: "blur",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
card_name: [
|
cardName: [
|
||||||
{
|
{
|
||||||
required: true,
|
required: true,
|
||||||
message: "请填写银行卡号对应的户名",
|
message: "请填写银行卡号对应的户名",
|
||||||
trigger: "blur",
|
trigger: "blur",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
tel_no: [
|
telNo: [
|
||||||
{
|
{
|
||||||
required: true,
|
required: true,
|
||||||
message: "请填写手机号",
|
message: "请填写手机号",
|
||||||
@@ -372,42 +378,42 @@ export default {
|
|||||||
trigger: "blur",
|
trigger: "blur",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
bank_acct_type: [
|
bankAcctType: [
|
||||||
{
|
{
|
||||||
required: true,
|
required: true,
|
||||||
message: "请选择银行账户类型",
|
message: "请选择银行账户类型",
|
||||||
trigger: "blur",
|
trigger: "blur",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
area_code: [
|
areaCode: [
|
||||||
{
|
{
|
||||||
required: true,
|
required: true,
|
||||||
message: "银行账户开户银行所在地区编码",
|
message: "银行账户开户银行所在地区编码",
|
||||||
trigger: "blur",
|
trigger: "blur",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
prov_code: [
|
provCode: [
|
||||||
{
|
{
|
||||||
required: true,
|
required: true,
|
||||||
message: "请填写银行账户开户银行所在省份编码",
|
message: "请填写银行账户开户银行所在省份编码",
|
||||||
trigger: "blur",
|
trigger: "blur",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
cert_id: [
|
certId: [
|
||||||
{
|
{
|
||||||
required: true,
|
required: true,
|
||||||
message: "请填写证件号",
|
message: "请填写证件号",
|
||||||
trigger: "blur",
|
trigger: "blur",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
cert_type: [
|
certType: [
|
||||||
{
|
{
|
||||||
required: true,
|
required: true,
|
||||||
message: "请填写证件类型",
|
message: "请填写证件类型",
|
||||||
trigger: "blur",
|
trigger: "blur",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
bank_code: [
|
bankCode: [
|
||||||
{
|
{
|
||||||
required: true,
|
required: true,
|
||||||
message: "请填写银行编码",
|
message: "请填写银行编码",
|
||||||
@@ -423,21 +429,27 @@ export default {
|
|||||||
},
|
},
|
||||||
value: [],
|
value: [],
|
||||||
options: [],
|
options: [],
|
||||||
|
settleAccount:{}
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
handleChange(value) {
|
handleChange(value) {
|
||||||
console.log(value);
|
console.log(value);
|
||||||
|
this.ruleForm.provCode = value[0]
|
||||||
|
this.ruleForm.areaCode = value[1]
|
||||||
},
|
},
|
||||||
// 创建汇付会员
|
// 创建汇付会员
|
||||||
submitForm(formName) {
|
submitForm(formName) {
|
||||||
|
console.log('省 市',this.ruleForm.provCode,this.ruleForm.areaCode)
|
||||||
this.$refs[formName].validate((valid) => {
|
this.$refs[formName].validate((valid) => {
|
||||||
if (valid) {
|
if (valid) {
|
||||||
console.log("valid", this.ruleForm);
|
console.log("valid", this.ruleForm);
|
||||||
createAdapayMember(this.ruleForm).then((response) => {
|
createAdapayMember(this.ruleForm).then((response) => {
|
||||||
console.log("新增", response);
|
console.log("新增", response);
|
||||||
this.openCreateAdapayMember = false;
|
this.openCreateAdapayMember = false;
|
||||||
|
this.openCreateAdapaySettleAccount = false
|
||||||
this.selectAdapayMember();
|
this.selectAdapayMember();
|
||||||
|
this.selectSettleAccount()
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
console.log("提交表格失败");
|
console.log("提交表格失败");
|
||||||
@@ -463,7 +475,15 @@ export default {
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
// 查询汇付结算账户
|
// 查询汇付结算账户
|
||||||
selectSettleAccount() {},
|
selectSettleAccount() {
|
||||||
|
let param = {
|
||||||
|
merchantId: this.merchantId,
|
||||||
|
};
|
||||||
|
selectSettleAccount(param).then(response =>{
|
||||||
|
console.log('查询汇付结算账号 response',response)
|
||||||
|
this.ruleForm = response.data
|
||||||
|
})
|
||||||
|
},
|
||||||
jsonHttp() {
|
jsonHttp() {
|
||||||
var that = this;
|
var that = this;
|
||||||
//(1).实例化ajax对象
|
//(1).实例化ajax对象
|
||||||
@@ -480,8 +500,6 @@ export default {
|
|||||||
xhr.onload = function () {
|
xhr.onload = function () {
|
||||||
// console.log(xhr.responseText,'responseText')
|
// console.log(xhr.responseText,'responseText')
|
||||||
that.options = JSON.parse(xhr.responseText);
|
that.options = JSON.parse(xhr.responseText);
|
||||||
// console.log('检测类型',Object.prototype.toString.call(that.options));
|
|
||||||
// console.log("option的值", that.options);
|
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -1,137 +0,0 @@
|
|||||||
"use strict";
|
|
||||||
const path = require("path");
|
|
||||||
|
|
||||||
function resolve(dir) {
|
|
||||||
return path.join(__dirname, dir);
|
|
||||||
}
|
|
||||||
|
|
||||||
const CompressionPlugin = require("compression-webpack-plugin");
|
|
||||||
|
|
||||||
const name = process.env.VUE_APP_TITLE || "有电充后台管理系统"; // 网页标题
|
|
||||||
|
|
||||||
const port = process.env.port || process.env.npm_config_port || 8081; // 端口
|
|
||||||
|
|
||||||
// vue.config.js 配置说明
|
|
||||||
//官方vue.config.js 参考文档 https://cli.vuejs.org/zh/config/#css-loaderoptions
|
|
||||||
// 这里只列一部分,具体配置参考文档
|
|
||||||
module.exports = {
|
|
||||||
// 部署生产环境和开发环境下的URL。
|
|
||||||
// 默认情况下,Vue CLI 会假设你的应用是被部署在一个域名的根路径上
|
|
||||||
// 如果应用被部署在一个子路径上,你就需要用这个选项指定这个子路径。例如,如果你的应用被部署在 https://www.xxxx.com/admin/,则设置 baseUrl 为 /admin/。
|
|
||||||
publicPath: process.env.NODE_ENV === "production" ? "/" : "/",
|
|
||||||
// 在npm run build 或 yarn build 时 ,生成文件的目录名称(要和baseUrl的生产环境路径一致)(默认dist)
|
|
||||||
outputDir: "dist",
|
|
||||||
// 用于放置生成的静态资源 (js、css、img、fonts) 的;(项目打包之后,静态资源会放在这个文件夹下)
|
|
||||||
assetsDir: "static",
|
|
||||||
// 是否开启eslint保存检测,有效值:ture | false | 'error'
|
|
||||||
lintOnSave: process.env.NODE_ENV === "development",
|
|
||||||
// 如果你不需要生产环境的 source map,可以将其设置为 false 以加速生产环境构建。
|
|
||||||
productionSourceMap: false,
|
|
||||||
// webpack-dev-server 相关配置
|
|
||||||
devServer: {
|
|
||||||
host: "0.0.0.0",
|
|
||||||
port: port,
|
|
||||||
open: true,
|
|
||||||
proxy: {
|
|
||||||
// detail: https://cli.vuejs.org/config/#devserver-proxy
|
|
||||||
[process.env.VUE_APP_BASE_API]: {
|
|
||||||
target: `http://localhost:8080`,
|
|
||||||
// 更改代理为本地地址
|
|
||||||
// target: `http://192.168.2.5:8080`,
|
|
||||||
changeOrigin: true,
|
|
||||||
pathRewrite: {
|
|
||||||
["^" + process.env.VUE_APP_BASE_API]: "",
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
disableHostCheck: true,
|
|
||||||
},
|
|
||||||
css: {
|
|
||||||
loaderOptions: {
|
|
||||||
sass: {
|
|
||||||
sassOptions: { outputStyle: "expanded" },
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
configureWebpack: {
|
|
||||||
name: name,
|
|
||||||
resolve: {
|
|
||||||
alias: {
|
|
||||||
"@": resolve("src"),
|
|
||||||
},
|
|
||||||
},
|
|
||||||
plugins: [
|
|
||||||
// #使用gzip解压缩静态文件
|
|
||||||
new CompressionPlugin({
|
|
||||||
cache: false, // 不启用文件缓存
|
|
||||||
test: /\.(js|css|html)?$/i, // 压缩文件格式
|
|
||||||
filename: "[path].gz[query]", // 压缩后的文件名
|
|
||||||
algorithm: "gzip", // 使用gzip压缩
|
|
||||||
minRatio: 0.8, // 压缩率小于1才会压缩
|
|
||||||
}),
|
|
||||||
],
|
|
||||||
// externals: {
|
|
||||||
// AMap: "window.AMap",
|
|
||||||
// AMapUI: "window.AMapUI", // 高德地图配置
|
|
||||||
// },
|
|
||||||
},
|
|
||||||
chainWebpack(config) {
|
|
||||||
config.plugins.delete("preload"); // TODO: need test
|
|
||||||
config.plugins.delete("prefetch"); // TODO: need test
|
|
||||||
|
|
||||||
// set svg-sprite-loader
|
|
||||||
config.module.rule("svg").exclude.add(resolve("src/assets/icons")).end();
|
|
||||||
config.module
|
|
||||||
.rule("icons")
|
|
||||||
.test(/\.svg$/)
|
|
||||||
.include.add(resolve("src/assets/icons"))
|
|
||||||
.end()
|
|
||||||
.use("svg-sprite-loader")
|
|
||||||
.loader("svg-sprite-loader")
|
|
||||||
.options({
|
|
||||||
symbolId: "icon-[name]",
|
|
||||||
})
|
|
||||||
.end();
|
|
||||||
|
|
||||||
config.when(process.env.NODE_ENV !== "development", (config) => {
|
|
||||||
config
|
|
||||||
.plugin("ScriptExtHtmlWebpackPlugin")
|
|
||||||
.after("html")
|
|
||||||
.use("script-ext-html-webpack-plugin", [
|
|
||||||
{
|
|
||||||
// `runtime` must same as runtimeChunk name. default is `runtime`
|
|
||||||
inline: /runtime\..*\.js$/,
|
|
||||||
},
|
|
||||||
])
|
|
||||||
.end();
|
|
||||||
config.optimization.splitChunks({
|
|
||||||
chunks: "all",
|
|
||||||
cacheGroups: {
|
|
||||||
libs: {
|
|
||||||
name: "chunk-libs",
|
|
||||||
test: /[\\/]node_modules[\\/]/,
|
|
||||||
priority: 10,
|
|
||||||
chunks: "initial", // only package third parties that are initially dependent
|
|
||||||
},
|
|
||||||
elementUI: {
|
|
||||||
name: "chunk-elementUI", // split elementUI into a single package
|
|
||||||
priority: 20, // the weight needs to be larger than libs and app or it will be packaged into libs or app
|
|
||||||
test: /[\\/]node_modules[\\/]_?element-ui(.*)/, // in order to adapt to cnpm
|
|
||||||
},
|
|
||||||
commons: {
|
|
||||||
name: "chunk-commons",
|
|
||||||
test: resolve("src/components"), // can customize your rules
|
|
||||||
minChunks: 3, // minimum common number
|
|
||||||
priority: 5,
|
|
||||||
reuseExistingChunk: true,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
});
|
|
||||||
config.optimization.runtimeChunk("single"),
|
|
||||||
{
|
|
||||||
from: path.resolve(__dirname, "./public/robots.txt"), //防爬虫文件
|
|
||||||
to: "./", //到根目录下
|
|
||||||
};
|
|
||||||
});
|
|
||||||
},
|
|
||||||
};
|
|
||||||
Reference in New Issue
Block a user