完成液面深度计算功能
This commit is contained in:
parent
067d3cdc2e
commit
3a57b926fd
@ -3,7 +3,8 @@
|
||||
<!-- <div>当前 dMeterType 的值: {{ dMeterType }}</div>
|
||||
<div>NGResult 数据: {{ NGResult }}</div> -->
|
||||
<h3 v-if="dMeterType === '4'">GB/T 17747</h3>
|
||||
<el-form v-if="dMeterType === '4'" :model="NGResult" label-position="top" ref="queryRef" size="small" :inline="false" label-width="160px" class="flex-form">
|
||||
<el-form v-if="dMeterType === '4'" :model="NGResult" label-position="top" ref="queryRef" size="small"
|
||||
:inline="false" label-width="160px" class="flex-form">
|
||||
<el-form-item :style="{ width: selectWidth + 'px' }" label="分子量" prop="dMrx">
|
||||
<el-input readonly v-model="NGResult.dMrx" placeholder="请输入分子量" />
|
||||
</el-form-item>
|
||||
@ -37,7 +38,8 @@
|
||||
</el-form>
|
||||
|
||||
<h3 v-if="dMeterType === '5'">AGA No10</h3>
|
||||
<el-form v-if="dMeterType === '5'" :model="NGResult" label-position="top" ref="queryRef" size="small" :inline="false" label-width="160px" class="flex-form">
|
||||
<el-form v-if="dMeterType === '5'" :model="NGResult" label-position="top" ref="queryRef" size="small"
|
||||
:inline="false" label-width="160px" class="flex-form">
|
||||
<el-form-item :style="{ width: selectWidth + 'px' }" label="理想气体的比焓" prop="dHo">
|
||||
<el-input readonly v-model="NGResult.dHo" placeholder="请输入理想气体的比焓" />
|
||||
</el-form-item>
|
||||
@ -63,15 +65,8 @@
|
||||
<el-input readonly v-model="NGResult.dKappa" placeholder="请输入等熵指数" />
|
||||
</el-form-item>
|
||||
<el-form-item :style="{ width: selectWidth + 'px' }" label="声速" prop="dSOS">
|
||||
<unit-converter
|
||||
v-model="NGResult.dSOS"
|
||||
:unit-type="'speed'"
|
||||
v-model:unit-order="NGResult.dSOSUnit"
|
||||
:show-english-only="true"
|
||||
:decimal-places="5"
|
||||
:input-disable="true"
|
||||
:width="selectWidth"
|
||||
/>
|
||||
<unit-converter v-model="NGResult.dSOS" :unit-type="'speed'" v-model:unit-order="NGResult.dSOSUnit"
|
||||
:show-english-only="true" :decimal-places="5" :input-disable="true" :width="selectWidth" />
|
||||
<!-- <el-input readonly v-model="NGResult.dSOS" placeholder="请输入声速" /> -->
|
||||
</el-form-item>
|
||||
<el-form-item :style="{ width: selectWidth + 'px' }" label="临界流函数" prop="dCstar">
|
||||
@ -80,7 +75,8 @@
|
||||
</el-form>
|
||||
|
||||
<h3 v-if="dMeterType === '6'">GB/T 11062</h3>
|
||||
<el-form v-if="dMeterType === '6'" :model="NGResult" label-position="top" ref="queryRef" size="small" :inline="false" label-width="160px" class="flex-form">
|
||||
<el-form v-if="dMeterType === '6'" :model="NGResult" label-position="top" ref="queryRef" size="small"
|
||||
:inline="false" label-width="160px" class="flex-form">
|
||||
<el-form-item :style="{ width: selectWidth + 'px' }" label="摩尔高位发热量" prop="dHhvMol">
|
||||
<el-input readonly v-model="NGResult.dHhvMol" placeholder="请输入摩尔高位发热量" />
|
||||
</el-form-item>
|
||||
@ -120,7 +116,8 @@
|
||||
</el-form>
|
||||
|
||||
<h3 v-if="dMeterType === '7'">其他</h3>
|
||||
<el-form v-if="dMeterType === '7'" :model="NGResult" label-position="top" ref="queryRef" size="small" :inline="false" label-width="160px" class="flex-form">
|
||||
<el-form v-if="dMeterType === '7'" :model="NGResult" label-position="top" ref="queryRef" size="small"
|
||||
:inline="false" label-width="160px" class="flex-form">
|
||||
<el-form-item :style="{ width: selectWidth + 'px' }" label="临界压力" prop="dPc">
|
||||
<el-input readonly v-model="NGResult.dPc" placeholder="请输入临界压力" />
|
||||
</el-form-item>
|
||||
@ -158,169 +155,202 @@
|
||||
<el-input readonly v-model="NGResult.dC3C4" placeholder="请输入C3C4组分含量(kg/m3)" />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
|
||||
<h3 v-if="dMeterType === '20'">井下液面深度</h3>
|
||||
<el-form v-if="dMeterType === '20'" :model="NGResult" label-position="top" ref="queryRef" size="small"
|
||||
:inline="false" label-width="160px" class="flex-form">
|
||||
|
||||
<el-form-item :style="{ width: selectWidth + 'px' }" label="井口声速(m/s)" prop="dPc">
|
||||
<el-input readonly v-model="NGResult.initialSOS" placeholder="井口声速" />
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item :style="{ width: selectWidth + 'px' }" label="粗算深度(m)" prop="dPc">
|
||||
<el-input readonly v-model="NGResult.initialEstimate" placeholder="粗算深度" />
|
||||
</el-form-item>
|
||||
<el-form-item :style="{ width: selectWidth + 'px' }" label="修正深度(m)" prop="dTC">
|
||||
<el-input readonly v-model="NGResult.correctedDepth" placeholder="修正深度" />
|
||||
</el-form-item>
|
||||
<el-form-item :style="{ width: selectWidth + 'px' }" label="迭代次数" prop="dBzsx">
|
||||
<el-input readonly v-model="NGResult.iterations" placeholder="迭代次数" />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<ul>
|
||||
<view v-for="item,index in NGResult.dataSegment" style="width: 100%;">
|
||||
<li>{{item}}</li>
|
||||
</view>
|
||||
</ul>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import { ref, watch, onMounted } from 'vue';
|
||||
import unitConverter from '@/components/inputValueUnit/index';
|
||||
import {
|
||||
ref,
|
||||
watch,
|
||||
onMounted
|
||||
} from 'vue';
|
||||
import unitConverter from '@/components/inputValueUnit/index';
|
||||
|
||||
// 定义 props
|
||||
const props = defineProps({
|
||||
elFormWidth: {
|
||||
type: Number,
|
||||
default: 180
|
||||
},
|
||||
dMeterType: {
|
||||
type: String,
|
||||
default: 0
|
||||
},
|
||||
modelValue: {
|
||||
type: Object,
|
||||
default: () => ({
|
||||
dMrx: 0,
|
||||
dZb: 0,
|
||||
dZf: 0,
|
||||
dFpv: 0,
|
||||
dDb: 0,
|
||||
dDf: 0,
|
||||
dRhob: 0,
|
||||
dRhof: 0,
|
||||
dRD_Ideal: 0,
|
||||
dRD_Real: 0,
|
||||
dHo: 0,
|
||||
dH: 0,
|
||||
dS: 0,
|
||||
dCpi: 0,
|
||||
dCp: 0,
|
||||
dCv: 0,
|
||||
dk: 0,
|
||||
dKappa: 0,
|
||||
dSOS: 0,
|
||||
dCstar: 0,
|
||||
dHhvMol: 0,
|
||||
dLhvMol: 0,
|
||||
dHhvv: 0,
|
||||
dLhvv: 0,
|
||||
dHhvm: 0,
|
||||
dLhvm: 0,
|
||||
dZb11062: 0,
|
||||
dRhob11062: 0,
|
||||
dRhof11062: 0,
|
||||
dRD_Ideal11062: 0,
|
||||
dRD_Real11062: 0,
|
||||
dWobbeIndex: 0,
|
||||
dPc: 0,
|
||||
dTC: 0,
|
||||
dBzsx: 0,
|
||||
dBzxx: 0,
|
||||
dTotalC: 0,
|
||||
dC2: 0,
|
||||
dC2j: 0,
|
||||
dC3j: 0,
|
||||
dC4j: 0,
|
||||
dC5j: 0,
|
||||
dC6j: 0,
|
||||
dC3C4: 0
|
||||
})
|
||||
}
|
||||
});
|
||||
// 定义 props
|
||||
const props = defineProps({
|
||||
elFormWidth: {
|
||||
type: Number,
|
||||
default: 180
|
||||
},
|
||||
dMeterType: {
|
||||
type: String,
|
||||
default: '0'
|
||||
},
|
||||
modelValue: {
|
||||
type: Object,
|
||||
default: () => ({
|
||||
dMrx: 0,
|
||||
dZb: 0,
|
||||
dZf: 0,
|
||||
dFpv: 0,
|
||||
dDb: 0,
|
||||
dDf: 0,
|
||||
dRhob: 0,
|
||||
dRhof: 0,
|
||||
dRD_Ideal: 0,
|
||||
dRD_Real: 0,
|
||||
dHo: 0,
|
||||
dH: 0,
|
||||
dS: 0,
|
||||
dCpi: 0,
|
||||
dCp: 0,
|
||||
dCv: 0,
|
||||
dk: 0,
|
||||
dKappa: 0,
|
||||
dSOS: 0,
|
||||
dCstar: 0,
|
||||
dHhvMol: 0,
|
||||
dLhvMol: 0,
|
||||
dHhvv: 0,
|
||||
dLhvv: 0,
|
||||
dHhvm: 0,
|
||||
dLhvm: 0,
|
||||
dZb11062: 0,
|
||||
dRhob11062: 0,
|
||||
dRhof11062: 0,
|
||||
dRD_Ideal11062: 0,
|
||||
dRD_Real11062: 0,
|
||||
dWobbeIndex: 0,
|
||||
dPc: 0,
|
||||
dTC: 0,
|
||||
dBzsx: 0,
|
||||
dBzxx: 0,
|
||||
dTotalC: 0,
|
||||
dC2: 0,
|
||||
dC2j: 0,
|
||||
dC3j: 0,
|
||||
dC4j: 0,
|
||||
dC5j: 0,
|
||||
dC6j: 0,
|
||||
dC3C4: 0
|
||||
})
|
||||
}
|
||||
});
|
||||
|
||||
// 定义响应式数据
|
||||
const NGResult = ref({
|
||||
dMrx: 0,
|
||||
dZb: 0,
|
||||
dZf: 0,
|
||||
dFpv: 0,
|
||||
dDb: 0,
|
||||
dDf: 0,
|
||||
dRhob: 0,
|
||||
dRhof: 0,
|
||||
dRD_Ideal: 0,
|
||||
dRD_Real: 0,
|
||||
dHo: 0,
|
||||
dH: 0,
|
||||
dS: 0,
|
||||
dCpi: 0,
|
||||
dCp: 0,
|
||||
dCv: 0,
|
||||
dk: 0,
|
||||
dKappa: 0,
|
||||
dSOS: 0,
|
||||
dSOSUnit: 0,
|
||||
dCstar: 0,
|
||||
dHhvMol: 0,
|
||||
dLhvMol: 0,
|
||||
dHhvv: 0,
|
||||
dLhvv: 0,
|
||||
dHhvm: 0,
|
||||
dLhvm: 0,
|
||||
dZb11062: 0,
|
||||
dRhob11062: 0,
|
||||
dRhof11062: 0,
|
||||
dRD_Ideal11062: 0,
|
||||
dRD_Real11062: 0,
|
||||
dWobbeIndex: 0,
|
||||
dPc: 0,
|
||||
dTC: 0,
|
||||
dBzsx: 0,
|
||||
dBzxx: 0,
|
||||
dTotalC: 0,
|
||||
dC2: 0,
|
||||
dC2j: 0,
|
||||
dC3j: 0,
|
||||
dC4j: 0,
|
||||
dC5j: 0,
|
||||
dC6j: 0,
|
||||
dC3C4: 0
|
||||
});
|
||||
const selectWidth = ref(180);
|
||||
// 定义响应式数据
|
||||
const NGResult = ref({
|
||||
dMrx: 0,
|
||||
dZb: 0,
|
||||
dZf: 0,
|
||||
dFpv: 0,
|
||||
dDb: 0,
|
||||
dDf: 0,
|
||||
dRhob: 0,
|
||||
dRhof: 0,
|
||||
dRD_Ideal: 0,
|
||||
dRD_Real: 0,
|
||||
dHo: 0,
|
||||
dH: 0,
|
||||
dS: 0,
|
||||
dCpi: 0,
|
||||
dCp: 0,
|
||||
dCv: 0,
|
||||
dk: 0,
|
||||
dKappa: 0,
|
||||
dSOS: 0,
|
||||
dSOSUnit: 0,
|
||||
dCstar: 0,
|
||||
dHhvMol: 0,
|
||||
dLhvMol: 0,
|
||||
dHhvv: 0,
|
||||
dLhvv: 0,
|
||||
dHhvm: 0,
|
||||
dLhvm: 0,
|
||||
dZb11062: 0,
|
||||
dRhob11062: 0,
|
||||
dRhof11062: 0,
|
||||
dRD_Ideal11062: 0,
|
||||
dRD_Real11062: 0,
|
||||
dWobbeIndex: 0,
|
||||
dPc: 0,
|
||||
dTC: 0,
|
||||
dBzsx: 0,
|
||||
dBzxx: 0,
|
||||
dTotalC: 0,
|
||||
dC2: 0,
|
||||
dC2j: 0,
|
||||
dC3j: 0,
|
||||
dC4j: 0,
|
||||
dC5j: 0,
|
||||
dC6j: 0,
|
||||
dC3C4: 0
|
||||
});
|
||||
const selectWidth = ref(180);
|
||||
|
||||
// 监听 elFormWidth 的变化
|
||||
watch(
|
||||
() => props.elFormWidth,
|
||||
(newVal) => {
|
||||
selectWidth.value = newVal;
|
||||
},
|
||||
{ deep: true }
|
||||
);
|
||||
// 监听 elFormWidth 的变化
|
||||
watch(
|
||||
() => props.elFormWidth,
|
||||
(newVal) => {
|
||||
selectWidth.value = newVal;
|
||||
}, {
|
||||
deep: true
|
||||
}
|
||||
);
|
||||
|
||||
// 监听 value 的变化
|
||||
watch(
|
||||
() => props.modelValue,
|
||||
(newVal) => {
|
||||
console.log(newVal);
|
||||
const processedValue = { ...newVal };
|
||||
for (const key in processedValue) {
|
||||
if (processedValue.hasOwnProperty(key)) {
|
||||
const value = processedValue[key];
|
||||
// 判断是否为有效的数值
|
||||
if (typeof value === 'number' && !isNaN(value) && isFinite(value)) {
|
||||
// 使用 toFixed 方法设置小数点位数
|
||||
processedValue[key] = parseFloat(value.toFixed(6));
|
||||
// 监听 value 的变化
|
||||
watch(
|
||||
() => props.modelValue,
|
||||
(newVal) => {
|
||||
console.log(newVal);
|
||||
const processedValue = {
|
||||
...newVal
|
||||
};
|
||||
for (const key in processedValue) {
|
||||
if (processedValue.hasOwnProperty(key)) {
|
||||
const value = processedValue[key];
|
||||
// 判断是否为有效的数值
|
||||
if (typeof value === 'number' && !isNaN(value) && isFinite(value)) {
|
||||
// 使用 toFixed 方法设置小数点位数
|
||||
processedValue[key] = parseFloat(value.toFixed(6));
|
||||
}
|
||||
}
|
||||
}
|
||||
NGResult.value = JSON.parse(JSON.stringify(processedValue));
|
||||
}, {
|
||||
deep: true
|
||||
}
|
||||
NGResult.value = JSON.parse(JSON.stringify(processedValue));
|
||||
},
|
||||
{ deep: true }
|
||||
);
|
||||
);
|
||||
|
||||
// 挂载后设置 selectWidth
|
||||
onMounted(() => {
|
||||
selectWidth.value = props.elFormWidth;
|
||||
});
|
||||
// 挂载后设置 selectWidth
|
||||
onMounted(() => {
|
||||
selectWidth.value = props.elFormWidth;
|
||||
});
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
/* 可按需添加样式 */
|
||||
.app-container {
|
||||
height: 100%;
|
||||
}
|
||||
.flex-form {
|
||||
display: grid;
|
||||
/* 优化后的自适应规则 */
|
||||
grid-template-columns: repeat(auto-fit, minmax(min(200px, 100%), 1fr));
|
||||
gap: 5px;
|
||||
}
|
||||
</style>
|
||||
/* 可按需添加样式 */
|
||||
.app-container {
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.flex-form {
|
||||
display: grid;
|
||||
/* 优化后的自适应规则 */
|
||||
grid-template-columns: repeat(auto-fit, minmax(min(200px, 100%), 1fr));
|
||||
gap: 5px;
|
||||
}
|
||||
</style>
|
||||
@ -186,9 +186,9 @@
|
||||
<!-- 液面深度计算 -->
|
||||
<el-form-item v-if="meterPar.dMeterType === '20'" :style="{ width: selectWidth + 'px' }" label="常温层深度"
|
||||
prop="dVFlowMax">
|
||||
<unit-converter v-model="meterPar.dVFlowMax" :unit-type="'length'"
|
||||
v-model:unit-order="meterPar.dVFlowUnit" :show-english-only="false" :decimal-places="5"
|
||||
:width="selectWidth" />
|
||||
<unit-converter v-model="meterPar.dVFlowMax" :unit-type="'user'" v-model:unit-order="meterPar.dVGscUnit"
|
||||
:show-english-only="false" :decimal-places="5" :user-defined="true" :user-definedunit-name="'米'"
|
||||
:enable-convert="false" :width="selectWidth" />
|
||||
</el-form-item>
|
||||
<el-form-item v-if="meterPar.dMeterType === '20'" :style="{ width: selectWidth + 'px' }" label="测量时间"
|
||||
prop="dVFlowMin">
|
||||
|
||||
@ -94,9 +94,9 @@
|
||||
dCdCalMethod: 0,
|
||||
dMeterFactor: 2354,
|
||||
dPulseNum: 12000,
|
||||
dVFlowMax: 50,
|
||||
dVFlowMin: 8,
|
||||
dVFlowCon: 0.025,
|
||||
dVFlowMax: 30,
|
||||
dVFlowMin: 12,
|
||||
dVFlowCon: 0.03,
|
||||
dPfRangeMin: 0,
|
||||
dPfRangeMax: 0,
|
||||
dDpRangeMin: 0,
|
||||
@ -233,8 +233,7 @@
|
||||
calcBtnFlow();
|
||||
} else if (['4', '5', '6', '7', ].includes(dMeterType.value)) {
|
||||
calc();
|
||||
}
|
||||
else if ([ '20'].includes(dMeterType.value)) {
|
||||
} else if (['20'].includes(dMeterType.value)) {
|
||||
calcBtnWaterDeep();
|
||||
}
|
||||
};
|
||||
@ -259,7 +258,7 @@
|
||||
try {
|
||||
console.log(parentMeterPar.value)
|
||||
console.log(dMeterType.value)
|
||||
const res = await calcNGPar(parentMeterPar.value);
|
||||
const res = await calcNGPar(parentMeterPar.value);
|
||||
parentNGResult.value = res.data;
|
||||
activeTab.value = 'meterresult';
|
||||
console.log('Response:', res);
|
||||
@ -268,7 +267,7 @@
|
||||
}
|
||||
};
|
||||
|
||||
// 液面深度
|
||||
// 液面深度
|
||||
const calcBtnWaterDeep = async () => {
|
||||
console.log(parentMeterPar.value);
|
||||
if (parentMeterPar.value.dngComponents === '') {
|
||||
@ -286,8 +285,8 @@
|
||||
try {
|
||||
console.log(parentMeterPar.value)
|
||||
console.log(dMeterType.value)
|
||||
const res = await calcWaterDeep(parentMeterPar.value);
|
||||
|
||||
const res = await calcWaterDeep(parentMeterPar.value);
|
||||
|
||||
|
||||
|
||||
parentNGResult.value = res.data;
|
||||
|
||||
159
vite.config.js
159
vite.config.js
@ -1,79 +1,86 @@
|
||||
import { defineConfig, loadEnv } from 'vite'
|
||||
import {
|
||||
defineConfig,
|
||||
loadEnv
|
||||
} from 'vite'
|
||||
import path from 'path'
|
||||
import createVitePlugins from './vite/plugins'
|
||||
// https://vitejs.dev/config/
|
||||
export default defineConfig(({ mode, command }) => {
|
||||
const env = loadEnv(mode, process.cwd())
|
||||
const { VITE_APP_ENV, VITE_BASE_ROUTER } = env
|
||||
return {
|
||||
// 部署生产环境和开发环境下的URL。
|
||||
// 默认情况下,vite 会假设你的应用是被部署在一个域名的根路径上
|
||||
// 例如 https://www.ruoyi.vip/。如果应用被部署在一个子路径上,你就需要用这个选项指定这个子路径。例如,如果你的应用被部署在 https://www.ruoyi.vip/admin/,则设置 baseUrl 为 /admin/。
|
||||
base: VITE_APP_ENV === 'production' ? VITE_BASE_ROUTER : VITE_BASE_ROUTER,
|
||||
plugins: createVitePlugins(env, command === 'build'),
|
||||
resolve: {
|
||||
// https://cn.vitejs.dev/config/#resolve-alias
|
||||
alias: {
|
||||
// 设置路径
|
||||
'~': path.resolve(__dirname, './'),
|
||||
// 设置别名
|
||||
'@': path.resolve(__dirname, './src'),
|
||||
'@lib': path.resolve(__dirname, './lib'),
|
||||
},
|
||||
// https://cn.vitejs.dev/config/#resolve-extensions
|
||||
extensions: ['.mjs', '.js', '.ts', '.jsx', '.tsx', '.json', '.vue']
|
||||
},
|
||||
// vite 相关配置
|
||||
server: {
|
||||
port: 80,
|
||||
host: true,
|
||||
open: false, // 启动时是否启动自动打开浏览器
|
||||
proxy: {
|
||||
// https://cn.vitejs.dev/config/#server-proxy
|
||||
'/dev-api': {
|
||||
|
||||
target: 'http://192.168.3.19:9999',
|
||||
changeOrigin: true,
|
||||
rewrite: (p) => p.replace(/^\/dev-api/, '')
|
||||
},
|
||||
'/v3': {
|
||||
target: 'http://ngtools.cn:9999',
|
||||
changeOrigin: true,
|
||||
rewrite: (p) => p.replace(/^\/dev-api/, '')
|
||||
}
|
||||
}
|
||||
},
|
||||
//fix:error:stdin>:7356:1: warning: "@charset" must be the first rule in the file
|
||||
css: {
|
||||
preprocessorOptions: {
|
||||
scss: {
|
||||
api: 'modern-compiler'
|
||||
}
|
||||
},
|
||||
postcss: {
|
||||
plugins: [
|
||||
{
|
||||
postcssPlugin: 'internal:charset-removal',
|
||||
AtRule: {
|
||||
charset: (atRule) => {
|
||||
if (atRule.name === 'charset') {
|
||||
atRule.remove();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
optimizeDeps: {
|
||||
include: [
|
||||
'@lib/vform/designer.umd.js',
|
||||
]
|
||||
},
|
||||
build: {
|
||||
commonjsOptions: {
|
||||
include: /node_modules|lib/
|
||||
}
|
||||
}
|
||||
}
|
||||
})
|
||||
export default defineConfig(({
|
||||
mode,
|
||||
command
|
||||
}) => {
|
||||
const env = loadEnv(mode, process.cwd())
|
||||
const {
|
||||
VITE_APP_ENV,
|
||||
VITE_BASE_ROUTER
|
||||
} = env
|
||||
return {
|
||||
// 部署生产环境和开发环境下的URL。
|
||||
// 默认情况下,vite 会假设你的应用是被部署在一个域名的根路径上
|
||||
// 例如 https://www.ruoyi.vip/。如果应用被部署在一个子路径上,你就需要用这个选项指定这个子路径。例如,如果你的应用被部署在 https://www.ruoyi.vip/admin/,则设置 baseUrl 为 /admin/。
|
||||
base: VITE_APP_ENV === 'production' ? VITE_BASE_ROUTER : VITE_BASE_ROUTER,
|
||||
plugins: createVitePlugins(env, command === 'build'),
|
||||
resolve: {
|
||||
// https://cn.vitejs.dev/config/#resolve-alias
|
||||
alias: {
|
||||
// 设置路径
|
||||
'~': path.resolve(__dirname, './'),
|
||||
// 设置别名
|
||||
'@': path.resolve(__dirname, './src'),
|
||||
'@lib': path.resolve(__dirname, './lib'),
|
||||
},
|
||||
// https://cn.vitejs.dev/config/#resolve-extensions
|
||||
extensions: ['.mjs', '.js', '.ts', '.jsx', '.tsx', '.json', '.vue']
|
||||
},
|
||||
// vite 相关配置
|
||||
server: {
|
||||
port: 80,
|
||||
host: true,
|
||||
open: false, // 启动时是否启动自动打开浏览器
|
||||
proxy: {
|
||||
// https://cn.vitejs.dev/config/#server-proxy
|
||||
'/dev-api': {
|
||||
|
||||
target: 'http://10.75.166.198:9999',
|
||||
changeOrigin: true,
|
||||
rewrite: (p) => p.replace(/^\/dev-api/, '')
|
||||
},
|
||||
'/v3': {
|
||||
target: 'http://ngtools.cn:9999',
|
||||
changeOrigin: true,
|
||||
rewrite: (p) => p.replace(/^\/dev-api/, '')
|
||||
}
|
||||
}
|
||||
},
|
||||
//fix:error:stdin>:7356:1: warning: "@charset" must be the first rule in the file
|
||||
css: {
|
||||
preprocessorOptions: {
|
||||
scss: {
|
||||
api: 'modern-compiler'
|
||||
}
|
||||
},
|
||||
postcss: {
|
||||
plugins: [{
|
||||
postcssPlugin: 'internal:charset-removal',
|
||||
AtRule: {
|
||||
charset: (atRule) => {
|
||||
if (atRule.name === 'charset') {
|
||||
atRule.remove();
|
||||
}
|
||||
}
|
||||
}
|
||||
}]
|
||||
}
|
||||
},
|
||||
optimizeDeps: {
|
||||
include: [
|
||||
'@lib/vform/designer.umd.js',
|
||||
]
|
||||
},
|
||||
build: {
|
||||
commonjsOptions: {
|
||||
include: /node_modules|lib/
|
||||
}
|
||||
}
|
||||
}
|
||||
})
|
||||
Loading…
Reference in New Issue
Block a user