setDate(date, triggerChange, dateStrFormat)
- установка даты...
function getStartEndDateOfMonth(domElement, inputElement, event) {
let date = new Date();
date.setMonth(Array.from(domElement).indexOf(event.target) + 1);
date.setDate(0);
let dateStart = `1.${normalizeDate(date.getMonth() + 1)}.${date.getFullYear()}`;
let dateEnd = `${date.getDate()}.${normalizeDate(date.getMonth() + 1)}.${date.getFullYear()}`;
//inputElement.value = `${dateStart} - ${dateEnd}`; !!! - это не требуется
flat.setDate ([dateStart, dateEnd]); // !!! - установка диапазона дат в плагин
}
...
Class BookList extends Component {
componentDidMount() {
// 1. receive data
const {bookstoreService} = this.props;
const data = bookstoreService.getBooks();
//console.log(data); // full
// 2. dispatch action to store
this.props.dispatch( this.props.booksLoaded(data)); // !!!! dispatch
}
....
получился запрос вида back.end/getInfo?user_id=xxx.
Суть вопроса не в том, как передать данные из фронтенда в бэкенд, а наоборот, чтобы React знал id пользователя и формировал соответствующие запросы.
Для его идентификации пишется id в сессию и идет переадресация на React-страницу. Н
id
в url
для идентификации, оставьте эту работу для сервера. Promise.all(promis1, promis2) // разрешится когда сработает каждый из промисов
.then(datas=>{
// здесь можно получить данные, преобразовать и записать в db
});
// запрос с сервера 1
const options = {
url: ' http://server2.com',
method: 'POST',
headers: {
'Cookie': cookie // cookie - то что вы получили в куки при авторизации на сервере http://server2.com
...
}
};
request(options, (err, res, data) =>{
...
}
Скажите, как в 2020 году осуществить задачу синхронного запроса .
XMLHttpRequest
используйте window.fetch
Асинхронные запросы уродуют логику программы
Promise
fetch('baseindex_numberoflines.php', {method: 'post' , body: {id: '735474'}})
.then(newdata=> {
// блок 1 - выполнится после успешного запроса
document.getElementById ("newinfo").innerHTML = newdata );
return "test"
})
.then(test=> {
// выполнится после блок 1
})
.catch(err=>{
// блок выполнится после ошибки
}
результат(число), должен оставаться, а результат тоже удаляется. Что именно подправить, чтобы результат оставался?
document.querySelector('input[name=button]').onclick = function(e){
e.preventDefault(); // блокировать действие по умолчанию
const initialState = {items: []};
const reducer = (state, action) => {
switch (action.type) {
case 'ADD':
return {
...state,
items: [...state.items, action.newItem]
};
default:
throw new Error();
}
};
const App = () => {
const [state, dispatch] = useReducer(reducer, initialState);
const onAdd = e => {
window.fetch(url, {method: 'post', body: {name: 'new task'} }) // отправляем новую задачу на сервер
.then(data => dispatch({ type: 'ADD', newItem: data}) // data = {id:9, name: 'new task'} ответ сервера в reduce
.catch(err => dispatch({ type: 'ERR', err}) // как то ошибку обработать
}
return <button onClick={onAdd}> {state.items.length} </button>;
}