Commit f5ba7367 by tungnq

IMPORTANT: Bổ sung chức năng tìm kiếm

parent 0bfd47ed
import React, { Component, useState } from "react"; import React, { Component, useMemo, useState } from "react";
import { View, Text, Linking } from "react-native"; import { View, Text, Linking } from "react-native";
import * as SCREENNAME from '../../routers/ScreenNames' import * as SCREENNAME from '../../routers/ScreenNames'
import Homeview from "./view"; import Homeview from "./view";
...@@ -39,6 +39,21 @@ const Home = (props) => { ...@@ -39,6 +39,21 @@ const Home = (props) => {
{ id: 13, title: "Mail", icon: R.images.icDChiThu,screenName: SCREENNAME.EMAIL, aciton: 'NAVIGATE'}, { id: 13, title: "Mail", icon: R.images.icDChiThu,screenName: SCREENNAME.EMAIL, aciton: 'NAVIGATE'},
]; ];
//Hàm tìm kiếm trong local theo tiêu đề chỉ hoạt động khi thực hiện tìm kiếm (searchText) thay đổi
const [
filterActivity,
filterStatics,
filterNotification,
] = useMemo(()=>{
if (!searchText.trim()) return [menuTeachingActivities, menuStatistics, menuNotification];
const toLowerCaseSearchText = searchText.toLowerCase();
const filterByTitle = (list) => list.filter(item => item.title.toLowerCase().includes(toLowerCaseSearchText));
return [filterByTitle(menuTeachingActivities), filterByTitle(menuStatistics), filterByTitle(menuNotification)];
},[searchText])
const actionHandlers = { const actionHandlers = {
NAVIGATE: (item) => { NAVIGATE: (item) => {
navigation.navigate(item.screenName, { navigation.navigate(item.screenName, {
...@@ -79,9 +94,9 @@ const Home = (props) => { ...@@ -79,9 +94,9 @@ const Home = (props) => {
return ( return (
<Homeview <Homeview
menuActivity={menuTeachingActivities} menuActivity={filterActivity}
menuStatistics={menuStatistics} menuStatistics={filterStatics}
menuNotification={menuNotification} menuNotification={filterNotification}
selectedMenuItem={selectedMenuItem} selectedMenuItem={selectedMenuItem}
searchText={searchText} searchText={searchText}
userProfile={userProfile} userProfile={userProfile}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment