实现Vue实例化前请求数据
如果希望vue容器实例化之前获取一些数据
方法一:
数据获取后再实例化vue容器
$.ajax({ method: "post", contentType: "application/json; charset=utf-8", dataType: "json", url: url, data: JSON.stringify(data), success: function(data) { new Vue();//请求完再实例化vue } });
方法二:
使用v-if,vue是不会渲染v-if为false内的模块,当请求完成后再设为true就可以做到异步渲染
官网对v-if的解释:根据表达式的值的 truthiness 来有条件地渲染元素。在切换时元素及它的数据绑定 / 组件被销毁并重建。
<div v-if="show">{{tpconfig}}</div> <script> new Vue(
name:"app", data:function(){ return{ show:false, tpconfig:null } }, mounted(){ $.ajax({ method: "post", contentType: "application/json; charset=utf-8", dataType: "json", url: url, data: JSON.stringify(data), success: function(data) { this.tpconfig=data; this.show=true; }.bind(this) }); } ) </script>