Fix boolean param bug

This commit is contained in:
marzban-dev
2026-05-02 18:46:58 +03:30
parent 83b368102d
commit b1173ea80e
3 changed files with 15 additions and 11 deletions
@@ -65,8 +65,8 @@ const resetFilters = () => {
search.value = "";
sort.value = "";
sliderValue.value = [PRODUCT_RANGE.min, PRODUCT_RANGE.max];
has_discount.value = "false";
in_stock.value = "false";
has_discount.value = false;
in_stock.value = false;
page.value = 1;
isSideShow.value = false;
@@ -164,13 +164,11 @@ watch(
<div class="flex items-center justify-between w-full gap-5">
<span class="text-black max-lg:text-sm">فقط کالاهای تخفیف دار</span>
<Switch v-model="has_discount" />
</div>
<div class="flex items-center justify-between w-full gap-5">
<span class="text-black max-lg:text-sm">فقط کالاهای موجود</span>
<Switch v-model="in_stock" />
</div>
</div>
@@ -55,8 +55,8 @@ const resetFilters = () => {
search.value = "";
sort.value = "";
sliderValue.value = [PRODUCT_RANGE.min, PRODUCT_RANGE.max];
has_discount.value = "false";
in_stock.value = "false";
has_discount.value = false;
in_stock.value = false;
page.value = 1;
isSideShow.value = false;
@@ -155,13 +155,11 @@ watch(
<div class="flex items-center justify-between w-full gap-5">
<span class="text-black max-lg:text-sm">فقط کالاهای تخفیف دار</span>
<Switch v-model="has_discount" />
</div>
<div class="flex items-center justify-between w-full gap-5">
<span class="text-black max-lg:text-sm">فقط کالاهای موجود</span>
<Switch v-model="in_stock" />
</div>
</div>
+11 -3
View File
@@ -36,12 +36,20 @@ export const useAppParams = () => {
mode: "replace",
});
const in_stock = useRouteQuery<string>("in_stock", "false", {
const in_stock = useRouteQuery("in_stock", "false", {
mode: "replace",
transform: {
get: (v) => v === "true",
set: (v: boolean) => (v ? "true" : "false"),
},
});
const has_discount = useRouteQuery<string>("has_discount", "false", {
const has_discount = useRouteQuery("has_discount", "false", {
mode: "replace",
transform: {
get: (v) => v === "true",
set: (v: boolean) => (v ? "true" : "false"),
},
});
const tracking_code = useRouteQuery<string>("tracking_code", "", {
@@ -52,7 +60,7 @@ export const useAppParams = () => {
() => page.value,
() => {
y.value = 0;
}
},
);
return {