增加前端格式检查配置
This commit is contained in:
@@ -19,10 +19,7 @@ defineProps<Props>()
|
||||
<section class="hero-board">
|
||||
<el-carousel height="240px" indicator-position="outside" :interval="3600">
|
||||
<el-carousel-item v-for="slide in banners" :key="slide.title || slide.image_url">
|
||||
<div
|
||||
class="hero-slide"
|
||||
:class="[`tone-${slide.tone}`, { 'has-image': slide.image_url }]"
|
||||
>
|
||||
<div class="hero-slide" :class="[`tone-${slide.tone}`, { 'has-image': slide.image_url }]">
|
||||
<img
|
||||
v-if="slide.image_url"
|
||||
:src="slide.image_url"
|
||||
@@ -95,7 +92,12 @@ defineProps<Props>()
|
||||
content: '';
|
||||
position: absolute;
|
||||
inset: 0;
|
||||
background: linear-gradient(90deg, rgba(15, 23, 42, 0.74) 0%, rgba(15, 23, 42, 0.24) 62%, transparent 100%);
|
||||
background: linear-gradient(
|
||||
90deg,
|
||||
rgba(15, 23, 42, 0.74) 0%,
|
||||
rgba(15, 23, 42, 0.24) 62%,
|
||||
transparent 100%
|
||||
);
|
||||
}
|
||||
|
||||
.hero-copy {
|
||||
|
||||
@@ -28,9 +28,9 @@ const props = defineProps<Props>()
|
||||
|
||||
const emit = defineEmits<{
|
||||
'update:filters': [filters: Partial<HomeFilters>]
|
||||
'reset': []
|
||||
'setFilterPopover': [key: FilterPopoverKey, visible: boolean]
|
||||
'closeFilterPopover': []
|
||||
reset: []
|
||||
setFilterPopover: [key: FilterPopoverKey, visible: boolean]
|
||||
closeFilterPopover: []
|
||||
}>()
|
||||
|
||||
const filterPopoverBaseProps = {
|
||||
@@ -67,9 +67,7 @@ function closePopover() {
|
||||
<strong>筛选大厅</strong>
|
||||
<span>{{ totalListings }} 个结果</span>
|
||||
</div>
|
||||
<el-button :icon="Refresh" link @click="emit('reset')">
|
||||
重置全部条件
|
||||
</el-button>
|
||||
<el-button :icon="Refresh" link @click="emit('reset')"> 重置全部条件 </el-button>
|
||||
</div>
|
||||
|
||||
<div class="filter-chip-row">
|
||||
|
||||
@@ -65,7 +65,11 @@ const coverURL = computed(() => props.listing.cover_url || props.listing.screens
|
||||
</div>
|
||||
<div class="stat-row">
|
||||
<label>体力/负重</label>
|
||||
<span>{{ readAssetString(listing, 'stamina_level') }}/{{ readAssetString(listing, 'load_level') }}</span>
|
||||
<span
|
||||
>{{ readAssetString(listing, 'stamina_level') }}/{{
|
||||
readAssetString(listing, 'load_level')
|
||||
}}</span
|
||||
>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -79,12 +83,16 @@ const coverURL = computed(() => props.listing.cover_url || props.listing.screens
|
||||
<div class="stat-row">
|
||||
<label>六级头甲</label>
|
||||
<span>
|
||||
{{ getResourceQuantity(listing, 'helmet6') }}头 / {{ getResourceQuantity(listing, 'armor6') }}甲
|
||||
{{ getResourceQuantity(listing, 'helmet6') }}头 /
|
||||
{{ getResourceQuantity(listing, 'armor6') }}甲
|
||||
</span>
|
||||
</div>
|
||||
<div class="stat-row">
|
||||
<label>其他重器</label>
|
||||
<span>巴雷特 {{ getResourceQuantity(listing, 'barrett') }} / 喷子 {{ getResourceQuantity(listing, 'shotgun') }}</span>
|
||||
<span
|
||||
>巴雷特 {{ getResourceQuantity(listing, 'barrett') }} / 喷子
|
||||
{{ getResourceQuantity(listing, 'shotgun') }}</span
|
||||
>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
@@ -29,12 +29,12 @@ const emit = defineEmits<{
|
||||
|
||||
const minValue = computed({
|
||||
get: () => props.modelMin,
|
||||
set: (val) => emit('update:modelMin', val),
|
||||
set: val => emit('update:modelMin', val),
|
||||
})
|
||||
|
||||
const maxValue = computed({
|
||||
get: () => props.modelMax,
|
||||
set: (val) => emit('update:modelMax', val),
|
||||
set: val => emit('update:modelMax', val),
|
||||
})
|
||||
|
||||
const isActive = computed(() => {
|
||||
@@ -59,11 +59,7 @@ function isSelected(item: RangeOption) {
|
||||
<template>
|
||||
<el-popover v-bind="popoverProps" :width="350">
|
||||
<template #reference>
|
||||
<button
|
||||
class="filter-chip"
|
||||
:class="{ active: isActive, wide }"
|
||||
type="button"
|
||||
>
|
||||
<button class="filter-chip" :class="{ active: isActive, wide }" type="button">
|
||||
<span>{{ chipLabel }}</span>
|
||||
<el-icon><ArrowDown /></el-icon>
|
||||
</button>
|
||||
@@ -79,19 +75,9 @@ function isSelected(item: RangeOption) {
|
||||
{{ item.label }}
|
||||
</button>
|
||||
<div class="range-manual">
|
||||
<el-input-number
|
||||
v-model="minValue"
|
||||
:controls="false"
|
||||
:min="0"
|
||||
placeholder="最小值"
|
||||
/>
|
||||
<el-input-number v-model="minValue" :controls="false" :min="0" placeholder="最小值" />
|
||||
<span>-</span>
|
||||
<el-input-number
|
||||
v-model="maxValue"
|
||||
:controls="false"
|
||||
:min="0"
|
||||
placeholder="最大值"
|
||||
/>
|
||||
<el-input-number v-model="maxValue" :controls="false" :min="0" placeholder="最大值" />
|
||||
</div>
|
||||
</div>
|
||||
</el-popover>
|
||||
|
||||
@@ -31,7 +31,7 @@ const isActive = computed(() => {
|
||||
const chipLabel = computed(() => {
|
||||
if (props.skinName) return props.skinName
|
||||
if (props.skinGroup) {
|
||||
return props.groups.find((g) => g.key === props.skinGroup)?.title || '皮肤'
|
||||
return props.groups.find(g => g.key === props.skinGroup)?.title || '皮肤'
|
||||
}
|
||||
return '皮肤'
|
||||
})
|
||||
|
||||
@@ -36,21 +36,13 @@ function selectOption(value: string) {
|
||||
<template>
|
||||
<el-popover v-bind="popoverProps" :width="220">
|
||||
<template #reference>
|
||||
<button
|
||||
class="filter-chip"
|
||||
:class="{ active: isActive, wide }"
|
||||
type="button"
|
||||
>
|
||||
<button class="filter-chip" :class="{ active: isActive, wide }" type="button">
|
||||
<span>{{ displayLabel }}</span>
|
||||
<el-icon><ArrowDown /></el-icon>
|
||||
</button>
|
||||
</template>
|
||||
<div class="filter-menu">
|
||||
<button
|
||||
type="button"
|
||||
:class="{ active: !modelValue }"
|
||||
@click="selectOption('')"
|
||||
>
|
||||
<button type="button" :class="{ active: !modelValue }" @click="selectOption('')">
|
||||
{{ placeholder }}
|
||||
</button>
|
||||
<button
|
||||
|
||||
Reference in New Issue
Block a user