vuejs在计算属性中放了ajax请求后会不停的请求数据?

如果把$.post(){} 这部分代码删除,只打印出一个2,否则无限打印1,2;为什么加了会无限请求吗?


<script>

        new Vue({

            el:"#box",

            data:{

                dataBanner:""

            },

            methods:{

            },

            computed:{

                filteredItems: function () {

                    var _this=this;

                    //如果把$.post这段代码删除就只打印一个2;否则无限打印1,2

                    $.post("json/group-type.json",{},function(result){

                        _this.dataBanner=result;

                        console.log(1);

                    })

                    console.log(2);

                    var arr=[];

                    var len=Math.ceil(_this.dataBanner.length/8);

                    for(var i=0;i<len;i++){

                        arr.push(_this.dataBanner.slice(8*i, 8*(i+1)));

                    }

                    return arr;

                }

            }

        })

</script>


POPMUISE
浏览 1298回答 1
1回答

largeQ

如果你只需要请求一次,那你应该放到created(){}中,computed是属性变化就会变化的。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript