Aetae, а, стоп, я похоже понял, из компонента, в котором ФИО имеется кидать в контекст и перетягивать в крошках, я правильно понял?
function reserve(from: Date, destination: string): Ticket;
function reserve(from: Date, to: Date, destination: string): Ticket;
function reserve(from: Date, toOrDest: Date | string, destination?: string): Ticket {
Если это функция - то метод, если это переменная содержащая значение, то свойство.
var o = {x: function(){}}
? :)const onInputCallBack = useCallback((files) => {
// ....
if( files[0].size > 150 ){
return 'Недопустимый размер'
}
}
removeEventListener
убрал предыдущий обработчик, ему этот самый обработчик надо передать, а не новую функцию, с виду похожую на него. useForm
, но могу предположить, что раз часть шаблона с ...register
становится скрыта, то useForm
логично считает, что она нафиг не нужна, и очищает всё с ней связанное.const fileField = register('file', { validate: (e) => onInputCallBack(e) } );
....
return (
...
<input type="file" id={id} {...fileField}/>
removeEventListener
сработал ему надо передать ссылку на существующий обработчик, как это делает автор поста, а не новосозданную анонимную функцию. {
let controller = new AbortController();
let i = 0;
async function updateMessages() {
const index = i++;
console.log(index, 'started updateMessages');
controller.abort();
console.log(index, 'abort called for previous AbortController');
controller = new AbortController();
controller.signal.addEventListener('abort', () => {
console.log(index, 'aborted')
});
console.log(index, 'created new AbortController');
console.log(index, 'requset start');
let response = await fetch("http://localhost:3000/messages", {signal: controller.signal});
console.log(index, 'requset headeers fetched');
let messages = await response.json();
console.log(index, 'requset json fetched');
counter = messages.length;
console.log(index, 'counter set');
let container = document.getElementById("container");
container.innerHTML = "";;
console.log(index, 'innerHTML cleaned');
console.log(index, 'renderMessages calling');
renderMessages(messages);
console.log(index, 'renderMessages called');
}
updateMessages()
updateMessages()
updateMessages()
}
1. Чтоб работал React(и в частности jsx) - сам React должен быть подключён.
2. Твой линтер выкинул явные подключения React.
Из этого можно сделать предположение, что ты не компенсировал это никак неявным подключением React.
Vite же лишь сборщик, он вообще для Vue делался и сам по себе о React ничего не знает. Если ты используешь какую-то настроенную сборку, то она по идее должна была об это позаботиться. Если собираешь сам - то и подключать весь нужный обвес надо самому,