#php #jquery #vue.js
#php #jquery #vue.js
Вопрос:
Может кто-нибудь, пожалуйста, помочь мне с этой ошибкой?
Я использую jQuery вместе с vue.js . Ниже приведен метод, с которым у меня возникли проблемы… Он вызывается запросом post. new_user
содержит значения, полученные из полей формы html…
Значения принимаются хорошо, когда я пишу это в консоли.
Проблема возникает, когда я пытаюсь использовать метод ajax для хранения данных (this.$http.post()). Я получаю следующую ошибку:
Ошибка типа: не удается прочитать свойство ‘replace’ неопределенного vue-resource.js:284
Я просмотрел пару ссылок. но я не мог воспользоваться помощью ни от кого… Возможно, я допустил несколько глупых ошибок, потому что я использовал приведенный выше код из отлично работающего скрипта. Так что, если кто-нибудь сможет обнаружить ошибку, я был бы благодарен. Спасибо … 🙂
Счастливого кодирования.
addUser : function(new_user){
// var instance = this;
console.log(this)
var new_user_input = this.new_user
console.log(new_user_input.name)//this works fine..
//problem comes right here
this.$http.post("clients/" , new_user_input).then((response) => {
alert("ok")
},(response) => {
alert("failed")
this.form_errors = response.data
// console.log("here should be the form errrors " response.data.title)
});
}
Комментарии:
1. Код выглядит нормально, я бы посмотрел причину вашей ошибки в данных this.new_user . Что оно содержит?
2. спасибо за исправление и быстрый ответ. как вы думаете, использование jQuery вызывает это, поскольку я использую $. new_user является объектом и содержит данные следующим образом: new_user: Адрес объекта: «катманду» контакт: «телефон» dob: «1992» образование: «бакалавры» электронная почта: «duwaljyoti16@gmail.com » пол: «мужской» имя: «джон доу» национальность: «непалец» телефон: «45678»
3. да, это имеет смысл .. я действительно не понимаю, где я тогда напортачил.. я использую vue v1.0.24 и vue resource v1.0.3
4. Вы уверены, что хотите
this.new_user
вместо justnew_user
(что вы передаете методу).5. Также попробуйте: this.$http({«клиенты /», метод: ‘POST’, данные: this.new_user})
Ответ №1:
Если вы используете Laravel, убедитесь, что у вас есть шаблон:
Хорошо:
<script>
window.Laravel = <?php echo json_encode([
'csrfToken' => csrf_token(),
]); ?>
</script>
//OR
<script>
window.Laravel = {!! json_encode([
'csrfToken' => csrf_token(),
]) !!}
</script>
ПЛОХО:
<script>
window.Laravel = '<?php echo json_encode([
'csrfToken' => csrf_token(),
]); ?>'
</script>
//OR
<script>
window.Laravel = {{ json_encode([
'csrfToken' => csrf_token(),
]) }}
</script>