import {myFunc} from '....';
........
const handleChangeRoadCosts = (id: number, keyVal: string, val: string) => {
return myFunc(id, keyVal, val, data);
};
React assumes that every component you write is a pure function. This means that React components you write must always return the same JSX given the same inputs (props, state, and context).https://react.dev/reference/react/StrictMode#fixin...
Components breaking this rule behave unpredictably and cause bugs. To help you find accidentally impure code, Strict Mode calls some of your functions (only the ones that should be pure) twice in development.
Since Next.js 13.4, Strict Mode is true by default with app router. You can still disable Strict Mode by setting reactStrictMode: false.https://nextjs.org/docs/app/api-reference/next-con...
const connectionString = `postgresql://${process.env.POSTGRES_USER}:${process.env.POSTGRES_PASSWORD}@${process.env.POSTGRES_HOST}:${process.env.POSTGRES_PORT}/${database}`;
(item: LinkItem) => void
, а требуется (data: MobileMegaMenuItem | LinkItem) => void,
, т.е. функция которая умеет работать и с тем и с тем. Подразумевается что onClick как раз не умеет и может привести к ошибке, потому и не даёт. export const useOpenMenuByHash = <Data extends MobileMegaMenuItem | LinkItem>(
data: Data[],
action: (data: Data) => void,
actionRoom?: () => void
) => {
//...
};
useOpenMenuByHash(data, onClick); // ok
useOpenMenuByHash(data, onClick as (d: LinkItem | MobileMegaMenuItem) => void);
iconImageOffset: [-26, -46]
Сдвиг точки привязки относительно верхнего левого угла изображениfetch(url)
.then((response) => response.json())
.then(({ cart }) => cartStore.setCart(cart))
.catch(e=>console.log(e))
.finally(() => setPreloader(false));
fetch(url)
.then((response) => response.json())
.then(({ cart }) => {cartStore.setCart(cart); setPreloader(false)} )
.catch(e=>{console.log(e); setPreloader(false)})
response.json()
будет ждать окончания запроса, setCart
будет ждать json
, setPreloader
будет ждать их обоих или падения.