Reply для Comment AngularJS Error 404 not found HELP

167
14 декабря 2018, 02:10

у меня есть проблема: -Вывожу комментарии на страницу и их children элементы. -Получаю id данного комментария. -По клику на span{replay} - открывается форма. -В поле textarea воодится текст и должен по клику на send отправлять данные на готовый back-end и дополнять массив данных json

Но последний пункт не работает - подскажите в чем проблема ??

вот мой код js

    $scope.addReply = function(_id){
        $http({
            method : "POST",
            url : "/comments/" + _id,
            headers: {
            'Content-Type': 'application/json'
            },
            params : {
                'parent' : null,
                'content' : _id.content
            }
        }).then(function(response){
            console.log(subComment);
            alert("Success REPLY!");
        }, function(response){
            alert("Failed REPLY!");
        }); 
    };
});

Вот мой HTML кусок этого элемента - >

 <li><a class="replytocomment" ng-click="openReplyArea = !openReplyArea" href=""><span><i class="fas fa-reply pl-3"></i></span>Replay</a></li>
            </ul>
            <div class="row">
                <div class="col-lg-8 offset-lg-2">
                    <div class="text-area-reply" ng-show="openReplyArea">
                        <textarea name="post-reply" maxlength="255" id="post-reply" rows="3" placeholder="Your Message" ng-model="_id.content"></textarea>
                        <div class="col-lg-11 offset-lg-1">
                            <div class="button-post-reply text-right">
                                <button class="btn btn-warning text-muted reply" type="submit" id="reply" ng-click="addReply(item.id)">Reply</button>
                            </div>
                        </div>
                    </div>
                </div>
            </div>

Не понимаю, в чем ошибка... Может, я ошибаюсь с местом, куда я данные отправляю... Вот структура данных json на сервере

Answer 1

Как оказалось, проблема заключалась в совсем мелких вещах, и точно не id

во первых по клику - я передавал только ID элемента, поэтому :

ng-click="addReplay(item.id)"

я заменил на : ng-click="addReplay(item)" после чего заменил модель на ng-model="item.children.content"

Ну и в самом js файле я переделал параметры и убрал конкатенацию

params : {
            'parent' : _id.id,
            'content' : _id.children.content
        }

вот и все, спасибо всем за помощь.

READ ALSO
Несколько форм с файлами ajax

Несколько форм с файлами ajax

Что не так? почему не отправляется? пробовал before send подсвечивать незаполненные поля красным, в итоге просто сообщение об успешной отправке...

142
Как скрыть форму ajax? [закрыт]

Как скрыть форму ajax? [закрыт]

Использую этот плагин https://jqueryvalidationorg/

152
Не работает slick слайдер

Не работает slick слайдер

Все сделал как в документации, но он почему то не работаетПричем вроде как подключился, но криво

147
Выставить дату конца периода в виджете Date Range Picker

Выставить дату конца периода в виджете Date Range Picker

Выставить дату конца периода по-умолчанию 1 месяц в виджете Date Range Picker

262