chore(ui): preffer useCallback

pull/5871/head
Pavel Zavora 2022-02-28 11:08:32 +01:00
parent a7bcd27199
commit af74fff4ef
1 changed files with 8 additions and 11 deletions

View File

@ -1,4 +1,4 @@
import React, {useEffect, useMemo, useRef, useState} from 'react' import React, {useCallback, useEffect, useMemo, useRef, useState} from 'react'
import {AlertRule, Kapacitor, Source} from 'src/types' import {AlertRule, Kapacitor, Source} from 'src/types'
import KapacitorScopedPage from './KapacitorScopedPage' import KapacitorScopedPage from './KapacitorScopedPage'
import {useDispatch} from 'react-redux' import {useDispatch} from 'react-redux'
@ -112,13 +112,10 @@ const Contents = ({
</div> </div>
) )
} }
const kapacitorLink = useMemo( const kapacitorLink = `/sources/${source.id}/kapacitors/${kapacitor.id}`
() => `/sources/${source.id}/kapacitors/${kapacitor.id}`,
[source, kapacitor]
)
// memoize table handlers in order to avoid re-rendering of table rows // memoize table handlers in order to avoid re-rendering of table rows
const onDelete = useMemo( const onDelete = useCallback(
() => (rule: AlertRule) => { (rule: AlertRule) => {
deleteRule(rule) deleteRule(rule)
.then(() => { .then(() => {
setAllList(allList.filter(x => x.id !== rule.id)) setAllList(allList.filter(x => x.id !== rule.id))
@ -130,8 +127,8 @@ const Contents = ({
}, },
[allList, dispatch] [allList, dispatch]
) )
const onChangeRuleStatus = useMemo( const onChangeRuleStatus = useCallback(
() => (rule: AlertRule) => { (rule: AlertRule) => {
const status = rule.status === 'enabled' ? 'disabled' : 'enabled' const status = rule.status === 'enabled' ? 'disabled' : 'enabled'
updateRuleStatus(rule, status) updateRuleStatus(rule, status)
.then(() => { .then(() => {
@ -148,8 +145,8 @@ const Contents = ({
[allList, dispatch] [allList, dispatch]
) )
const filterRef = useRef<HTMLInputElement>() const filterRef = useRef<HTMLInputElement>()
const onViewRule = useMemo( const onViewRule = useCallback(
() => (id: string) => { (id: string) => {
const params = new URLSearchParams({ const params = new URLSearchParams({
l: 't', // inform view page to return back herein l: 't', // inform view page to return back herein
filter: filterRef.current.value, filter: filterRef.current.value,