Возникла непонятная ситуация:
c сервера (Laravel) приходит массив с ошибками, если их нет - то пустой массив []
.
Все попытки проверить на пустой массив не увенчались успехом...
Пример если есть ошибка:
{"email":["These credentials do not match our records."]}
Не знаю почему, но Object.keys(errors).length
не работает.
Пример использования:
computed: {
error() {
return !!Object.keys(this.errors).length;
}
},
mounted() {
console.log(this.errors);
console.log(this.error)
},
В консоли:
{"email":["These credentials do not match our records."]}
true
и
[]
true
Можно получить ключи массива через Object.keys(errors)
и проверить их длину.
const errors = {"email":["These credentials do not match our records."]}
if (Object.keys(errors).length)
console.log('Ошибка найдена')
const errors2 = {}
if (Object.keys(errors2).length)
console.log('Во втором ошибка найдена')
Могу дать свою функцию для формирования строки сообщения из ошибок, вдруг пригодится:
function showServerError ({ data }) {
const { errors } = data
let message = ''
if (errors) {
for (let field in errors) {
if (errors.hasOwnProperty(field)) {
for (let error of errors[field]) {
// можете добавить префикс field(имя поля с ошибкой) если надо
message += `${error}\n`
}
}
}
} else {
message = data.message
}
// можете вывести через alert, например
alert(message)
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Использую Chrome Canary (которая будущая версия Chrome, которая опережает на 4 месяца stable)
Должна быть проверка на время, то есть если время больше 8 и меньше 23 то условиеВремя беру из метода Date()
С помощью программы API ЯндексКарт были нарезаны тайлы карты
Методом гугления(с js только начинаю знакомство) сделал для своих нужд скриптикИдея в том, что по указанным селекторам я вытаскиваю со страницы...