кто-нибудь может сказать мне, я не мог получить этот код? - PullRequest
0 голосов
/ 28 декабря 2018
    const getVisibleExpenses = (expenses, { text, sortBy, startDate, endDate }) => {
    return expenses.filter((expense) => {
        const startDateMatch = typeof startDate !== "number" || expense.createAt >= startDate;
        const endDateMatch = typeof endDate !== "number" || expense.createAt <= endDate;
        const textMatch = expense.desciption.toLowerCase().includes(text.toLowerCase())
        return startDateMatch && endDateMatch && textMatch;
    });

}
const store = createStore(combineReducers({
    expenses: expensesReducer,
    filters: filterReducer
}))

store.subscribe(() => {
    const state = store.getState();
    const visibleExpense = getVisibleExpenses(state.expenses, state.filters);
    console.log(visibleExpense);
})

Может ли кто-нибудь помочь мне описать этот код, особенно в этом разделе, я получил расходы и объект из хранилища избыточных данных, которые являются редуктором, но я не мог понять логику приведенного ниже кода

const startDateMatch = typeof startDate !== "number" || expense.createAt >= startDate;

1 Ответ

0 голосов
/ 28 декабря 2018
const startDateMatch = typeof startDate !== "number" || expense.createAt >= startDate;

Это означает, что если тип startDate не является числом или больше или равен дате расхода.createAt, вернуть логическое значение со значением true.

Если один или другой имеет значение false, startDateMatch будет иметь значение false.Оба должны быть истинными, чтобы возвращать истину.

Сочетая это с двумя другими критериями, если все верно (они совпадают), тогда возвращается значение true, в противном случае, если какой-либо из них будет ложным, вернется false.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...