• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com专业计算机教程网站
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure
您的位置:首页 > 网页设计 >vue > vue.js通过自定义指令实现数据拉取更新的实现方法

vue.js通过自定义指令实现数据拉取更新的实现方法

作者: 字体:[增加 减小] 来源:互联网 时间:2017-05-30

本文主要包含vue.js自定义指令,vue.js指令,vue.js 自定义元素,vue.js 自定义过滤器,vue.js等相关知识,希望在学习及工作中可以帮助到您

前言

这篇文章的代码片段位于 vue 的单文件组件中,即以 .vue 结尾的文件中,本文说明的只是一种实现方法,既不是唯一的方法也不是最好的方法,如果大家有更好的方法可以留言,大家进行讨论。

第一步

首先,一定要先定义变量:

// app.vue <script>

data () {  
  return {
   // 定义 getData
   getData:{},
   // 定义自定义指令的绑定值
   ifUpdate:true
  }
}
</div>

第二步

然后要使用 ajax 的话,要在 index.html 里引入 jquery,这样就可以全局使用了:

// index.html

<script type="text/javascript" src="./lib/js/jquery-2.1.1.min.js"></script>
</div>

第三步

接着使用自定义指令,在组件实例化后,会自动执行自定义指令里的方法:

组件实例化后会立即以初始值 ifUpdate 为参数第一次调用自定义指令 initData 的方法,之后每次参数值 ifUpdate 变化时会再次调用 initData 的函数,参数为 ifUpdate 的新值与旧值。

// app.vue <template>

// 在页面节点(自由选择)中绑定自定义指令
<div v-initData="ifUpdate" ></div>
</div>
// app.vue <script>

// 定义自定义指令
directives:{
  initData:function(val, oldVal){
   if(!val){
    return;
   }
   var self = this;
   $.getJSON( "ajax/test.json", function( data ) {
     self.vm.getData = data;
   });
   // 下次 ifUpdate 值更新为 true 时就会再次使用上面的 ajax 去获取数据
   self.vm.ifUpdate = false;
  }
}
</div>

使用场景说明

用户评论后,刷新评论列表:

     首次获取评论数据后,将 ifUpdate 改为 false

     用户添加评论后将数据传到后台,并将 ifUpdate 变为 true

     指令根据 ifUpdate 变化而触发,再次通过 ajax 从后台拉取数据

     拉取完再将 ifUpdate 重置为 false

总结

以上就是这篇文章的全部内容,希望本文的内容对大家学习或者使用vue.js能有所帮助,如果有疑问大家可以留言交流。

</div>

您可能想查找下面的文章:

  • vue.js指令v-model使用方法
  • Vue.js自定义指令的用法与实例解析
  • 实现一个简单的vue无限加载指令方法
  • Vue自定义指令介绍(2)
  • vue.js指令v-model实现方法
  • Vue.js常用指令汇总(v-if、v-for等)
  • vue自定义指令实现v-tap插件
  • vue.js指令v-for使用及索引获取
  • vue.js通过自定义指令实现数据拉取更新的实现方法
  • 利用Vue.js指令实现全选功能

相关文章

  • 2017-05-30Vue.js表单控件实践
  • 2017-05-30详解vue-router 2.0 常用基础知识点之导航钩子
  • 2017-05-30Vuejs第十二篇之动态组件全面解析
  • 2017-05-30Vue.js组件tree实现省市多级联动
  • 2017-05-30详解vue之页面缓存问题(基于2.0)
  • 2017-05-30Vue异步组件使用详解
  • 2017-05-30vue v-on监听事件详解
  • 2017-05-30Vue.js实现无限加载与分页功能开发
  • 2017-05-30简单理解vue中track-by属性
  • 2017-05-30Vue监听数组变化源码解析

文章分类

  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure

最近更新的内容

    • Vue声明式渲染详解
    • Vue.js组件tree实现无限级树形菜单
    • Vue响应式添加、修改数组和对象的值
    • vuejs如何配置less
    • vue.js绑定class和style样式(6)
    • Vue.js开发环境搭建
    • Vue通过input筛选数据
    • vue2.0嵌套路由实现豆瓣电影分页功能(附demo)
    • VueJs与ReactJS和AngularJS的异同点
    • Vue.js绑定HTML class数组语法错误的原因分析

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有