Andrew Chil: можно использовать аяксовые либы, а потом обернуть их в промис, либо сразу использовать промисовые либы. Лично я использую axios (https://github.com/mzabriskie/axios).
Здесь важно понять, что apiClient.get() возвращает промис, а затем в then обрабатываем коллбек синхронно. Немного информации о промисах https://learn.javascript.ru/promise
1) Когда вы указываете ширину и используете padding, то он добавляется к ширине. То есть вы хотели 80% ширины, а с padding получили еще несколько ненужных пикселей. От этого можно избавиться изменением блочной модели box-sizing. Значение border-box помещает padding внутри ширины. В вашем примере нужно добавить несколько свойств:
.form-wrapper input {
box-sizing:border-box;
height:40px; // раньше высота была 20 и вертикальный паддинг по 10, поскольку паддинг теперь считается внутри, высоту нужно увеличить на 20
}
Написано
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.
Здесь важно понять, что apiClient.get() возвращает промис, а затем в then обрабатываем коллбек синхронно. Немного информации о промисах https://learn.javascript.ru/promise