如何将 ngRx 的以下选择器转换为布尔值 return?
How to convert follwoing selector of ngRx to boolean return?
目前,我使用下面的过滤器 return 给定日期范围内的一些数据列表。实际上,在组件中,我只检查了列表长度,并据此为变量分配了 True 和 False。我需要知道如何直接将其转换为 return 布尔值,这种方式是否正确?
export const selectModel = (planedDate: Date) => createSelector(
selectDrugReviews,
(reviews: ReviewModel[]) => reviews.filter(date => date.startDateTime.getTime() <= planedDate.getTime() && (date.endDateTime !== undefined ? date.endDateTime.getTime() >= planedDate.getTime() : true))
);
您需要使用管道 map
而不是过滤器。
map((date) => <condition here>));
试试这个
export const selectModel = (planedDate: Date) => createSelector(
selectDrugReviews,
(reviews: ReviewModel[]) => reviews.map((date) => date.startDateTime.getTime() <= planedDate.getTime() && (date.endDateTime !== undefined ? date.endDateTime.getTime() >= planedDate.getTime() : true))
);
目前,我使用下面的过滤器 return 给定日期范围内的一些数据列表。实际上,在组件中,我只检查了列表长度,并据此为变量分配了 True 和 False。我需要知道如何直接将其转换为 return 布尔值,这种方式是否正确?
export const selectModel = (planedDate: Date) => createSelector(
selectDrugReviews,
(reviews: ReviewModel[]) => reviews.filter(date => date.startDateTime.getTime() <= planedDate.getTime() && (date.endDateTime !== undefined ? date.endDateTime.getTime() >= planedDate.getTime() : true))
);
您需要使用管道 map
而不是过滤器。
map((date) => <condition here>));
试试这个
export const selectModel = (planedDate: Date) => createSelector(
selectDrugReviews,
(reviews: ReviewModel[]) => reviews.map((date) => date.startDateTime.getTime() <= planedDate.getTime() && (date.endDateTime !== undefined ? date.endDateTime.getTime() >= planedDate.getTime() : true))
);