axios 然后在 vue 中将对象推送到数组

axios then in vue push objects to array

为什么当我将对象插入数组时,它们在第一种方法中被插入并被覆盖

但是第二个什么都没发生?

    el:"#usersList",
        data () {
            return {
            users: []
            }
        },

这个有效

.then(response => (this.users = response.data))

为什么这不起作用?

    .then(
                function (response) {
                var arr = response.data;
                const rename = null;
                arr.forEach( function(data) {
                    switch(data["prava"]) {
                        case "1":
                          data["prava"] = "User 0";
                          break;
                        case "2":
                            data["prava"] = "User 1";
                          break;
                        case "3":
                            data["prava"] = "Mod";
                            break;
                        case "4":
                            data["prava"] = "Admin";
                            break;
                        case "5":
                            data["prava"] = "Owner";
                            break;
                        default:
                            data["prava"] = "User 1";
                      }
                  });
                this.users = arr;
            })

组件实例 thisthen 回调中不可用,但如果您使用箭头函数,它是可用的:

.then((response)=>{
            var arr = response.data;
            const rename = null
            ...
           this.users = arr;
})