使用 Vue和axios

昨天写完了博客以后,有人就在我的博客下面留言说现在不是使用了Axios了吗?我赶紧再把Axios的例程给补上,并且做一个更新。

其实vue-resource并不复杂,就是不稳定。Vue官方放弃它也是对的,作者是这样子说的

最近团队讨论了一下,Ajax 本身跟 Vue 并没有什么需要特别整合的地方,使用 fetch polyfill 或是 axios、superagent 等等都可以起到同等的效果,vue-resource 提供的价值和其维护成本相比并不划 算,所以决定在不久以后取消对 vue-resource 的官方推荐。已有的用户可以继续使用,但以后不再把 vue-resource 作为官方的 ajax 方案。

axios的确更优秀更稳定。

首先引入Vue和axios。

<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
<script src="/js/vue.js"></script>

然后,编写Javascript:

Vue.prototype.$http=axios;
new Vue({
el: '#app',
data: {
    peps: ''    
},
mounted() {
    this.$http.get('Category.json').then(response=>this.peps=response.data);
   }
})

json数据是这样子的:

[
{
 "ID":"1",
 "name": "地产",
 "Url":"/Category/List/1"
},
{ "ID":"2",
 "name": "科技",
 "Url":"/Category/List/2"},
{ "ID":"3",
 "name": "医药",
 "Url":"/Category/List/3"},
{ "ID":"4",
 "name": "其他",
 "Url":"/Category/List/4"}
]

我是希望以上的数据渲染到一个Select里面去,通过onchange直接将当前页面跳转到json数据的Url去,那么在html中只需要这样设置:

<select id="app" onchange="if (this.value) window.location.href=this.value">
            <option  v-for = "pep in peps" :value = "pep.Url"  >{{pep.name}}</option>
</select>

运行测试通过。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容