为什么在调用$http服务方法后重新加载页面?

yqkkidmi  于 2021-09-29  发布在  Java
关注(0)|答案(0)|浏览(131)

我的angularjs应用程序中有两个控制器,模拟积垢应用程序。第一个控制器包含输入表单,第二个控制器是显示表,它们通过服务相互交换数据。当我执行crud操作时,服务将向api发送更新数据的请求(我使用的是json se)rverhttps://github.com/typicode/json-server#getting-当调用$http方法时,意外的是,它导致页面重新加载,不再是异步的,这应该在angularjs模块中。
我的代码怎么了?我一直在寻找,但仍然没有找到任何解决方案。也许我的搜索技术不好,所以请有人帮帮我
这是我的学生服务

app.service("studentService", function ($http, $filter) {
let student = {};
let students = [];

student.get = function () {
    return student;
};

student.set = function (sv) {
    student = sv;
};

student.create = function (data) {
    $http.post("http://localhost:3000/posts", data).then(function (response) {
        student = response.data;
    }, function (error) {
        alert("Create student failed");
    });
}

student.update = function (id, data) {
    $http.put("http://localhost:3000/posts/" + id, data).then(function (response) {
        student = response.data;
    }, function (error) {
        alert("Update student failed");
    });
}

student.delete = function (id) {
    $http.delete("http://localhost:3000/posts/" + id).then(function (response) {
        student = null;
    }, function(error) {
        alert("Delete student failed");
    });
}

students.get = function () {
    return students;
};

students.set = function () {
    $http.get("http://localhost:3000/posts", {cache: true}).then(function (response) {
        let data = $filter("orderBy")(response.data, "id");
        for (let sv of data) {
            students.push(sv);
        }
    });
}

return {
    student,
    students,
};

});

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题