fix: 修复筛选功能搜索报错 - Assignment to constant variable
问题:使用 v-model 绑定 reactive 对象时,Vue 尝试重新赋值整个对象导致报错 解决方案: - 将所有 TaskFilters 组件的 v-model 改为 :model-value 和 @update:model-value - 在事件处理函数中使用 Object.assign 来更新 reactive 对象的属性,而不是重新赋值整个对象 - 修复了 filters、reviewFilters、inProgressFilters、completedFilters、publishedFilters、draftsFilters 的绑定方式
This commit is contained in:
parent
9b5449cf75
commit
dce3b8ec58
@ -71,7 +71,8 @@
|
||||
<a-tab-pane key="available" tab="可接任务">
|
||||
<!-- 搜索和筛选栏(使用公共组件) -->
|
||||
<TaskFilters
|
||||
v-model="filters"
|
||||
:model-value="filters"
|
||||
@update:model-value="(value) => Object.assign(filters, value)"
|
||||
:stats-text="`共 ${total} 个任务`"
|
||||
:sort-options="availableSortOptions"
|
||||
:status-options="availableStatusOptions"
|
||||
@ -331,7 +332,8 @@
|
||||
</template>
|
||||
<!-- 搜索和筛选栏(使用公共组件) -->
|
||||
<TaskFilters
|
||||
v-model="reviewFilters"
|
||||
:model-value="reviewFilters"
|
||||
@update:model-value="(value) => Object.assign(reviewFilters, value)"
|
||||
:stats-text="`共 ${reviewTotal} 个待审核任务`"
|
||||
:sort-options="reviewSortOptions"
|
||||
:status-options="reviewStatusOptions"
|
||||
@ -630,7 +632,8 @@
|
||||
</template>
|
||||
<!-- 搜索和筛选栏(使用公共组件) -->
|
||||
<TaskFilters
|
||||
v-model="inProgressFilters"
|
||||
:model-value="inProgressFilters"
|
||||
@update:model-value="(value) => Object.assign(inProgressFilters, value)"
|
||||
:stats-text="`共 ${inProgressTotal} 个进行中任务`"
|
||||
:sort-options="inProgressSortOptions"
|
||||
:status-options="inProgressStatusOptions"
|
||||
@ -955,7 +958,8 @@
|
||||
</template>
|
||||
<!-- 搜索和筛选栏(使用公共组件) -->
|
||||
<TaskFilters
|
||||
v-model="completedFilters"
|
||||
:model-value="completedFilters"
|
||||
@update:model-value="(value) => Object.assign(completedFilters, value)"
|
||||
:stats-text="`共 ${completedTotal} 个已完成任务`"
|
||||
:sort-options="completedSortOptions"
|
||||
:show-status="false"
|
||||
@ -1302,7 +1306,8 @@
|
||||
</template>
|
||||
<!-- 搜索和筛选栏(使用公共组件) -->
|
||||
<TaskFilters
|
||||
v-model="publishedFilters"
|
||||
:model-value="publishedFilters"
|
||||
@update:model-value="(value) => Object.assign(publishedFilters, value)"
|
||||
:stats-text="`共 ${publishedTotal} 个任务`"
|
||||
:sort-options="publishedSortOptions"
|
||||
:status-options="publishedStatusOptions"
|
||||
@ -1669,7 +1674,8 @@
|
||||
</template>
|
||||
<!-- 搜索和筛选栏(使用公共组件) -->
|
||||
<TaskFilters
|
||||
v-model="draftsFilters"
|
||||
:model-value="draftsFilters"
|
||||
@update:model-value="(value) => Object.assign(draftsFilters, value)"
|
||||
search-placeholder="搜索草稿任务..."
|
||||
:stats-text="`共 ${draftsTotal} 个草稿`"
|
||||
:sort-options="draftsSortOptions"
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user