Nuxt.js 数据双向绑定的实现


Posted in Javascript onFebruary 17, 2019

假定我们有一个需求,一开始通过mounted()将一个字符串渲染在页面上,但是我们经过操作后修改了数据并且需要将得到的结果重新异步渲染到页面中去,而不是跳转刷新页面来重新渲染

首先模板中data()中定义数据,并且要将定义的数据显示出来

<template>
  <div>
    <span @click="click">{{ text }}</span>
  </div>
</template>

<script>
  export default {
   data(){
    return {
     text: '',
     newText: '1'
    }
   },
   async mounted(){
     let {status,data:{text}} = await self.$axios.post('/getText');
     this.text = text;
   }
  }
</script>

然后我们通过methods里的函数来获取后台的数据

methods:{
  async click(){
    let {status,data:{text}} = await self.$axios.post('/updateText',{
      text,
      newText
    })
   
    this.text = text;
  }
  
}

服务端的接口如下

router.get('/getText', async (ctx) => {
  let text= await Text.find();
  ctx.body = {
    text
  }
}

router.post('/updateText', async (ctx) => {
 const {text,newText} = ctx.request.body;
 let oldVal = text;
 let newVal = newText;

 let ncomment = await Comment.updateOne(oldVal,newVal);

 let text= await Text.find();

 ctx.body={
  text
 }
})

这里有个重点!

获取页面传过来的参数时必须使用结构赋值的方法获取,不然获取到的为一个Object,查询将会出错!

双向绑定在这里的体现是:一开始通过mounted()将数据渲染到模板中,然后调用函数通过服务端的updateText接口改变数据,在updateText接口中更新完数据后,执行一遍查询,将查询结果返回到触发的函数中。并在该函数中修改data()中text的值达到数据双向绑定的效果

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery EasyUI API 中文文档 - ComboGrid 组合表格
Oct 13 Javascript
node.js学习总结之调式代码的方法
Jun 25 Javascript
javascript实现动态标签云
Oct 16 Javascript
js实现跨域的几种方法汇总(图片ping、JSONP和CORS)
Oct 25 Javascript
Jquery表单验证失败后不提交的解决方法
Oct 18 Javascript
js倒计时显示实例
Dec 11 Javascript
详解vue.js移动端导航navigationbar的封装
Jul 05 Javascript
bootstrap实现点击删除按钮弹出确认框的实例代码
Aug 16 Javascript
JS重学系列之聊聊new操作符
Mar 04 Javascript
微信小程序中使用echarts的实现方法
Apr 24 Javascript
Vue中this.$nextTick的作用及用法
Feb 04 Javascript
JS原型对象操作实例分析
Jun 06 Javascript
详解微信小程序实现仿微信聊天界面(各种细节处理)
Feb 17 #Javascript
JavaScript遍历DOM元素的常见方式示例
Feb 16 #Javascript
原生JS实现逼真的图片3D旋转效果详解
Feb 16 #Javascript
JS实现简单的抽奖转盘效果示例
Feb 16 #Javascript
mocha的时序规则讲解
Feb 16 #Javascript
jQuery实现ajax的嵌套请求案例分析
Feb 16 #jQuery
解决微信小程序中转换时间格式IOS不兼容的问题
Feb 15 #Javascript
You might like
php仿ZOL分页类代码
2008/10/02 PHP
详解WordPress中添加友情链接的方法
2016/05/21 PHP
PHP排序算法之希尔排序(Shell Sort)实例分析
2018/04/20 PHP
php插入mysql数据返回id的方法
2018/05/31 PHP
javascript数组的扩展实现代码集合
2008/06/01 Javascript
JavaScript中各种编码解码函数的区别和注意事项
2010/08/19 Javascript
JavaScript高级程序设计 阅读笔记(七) ECMAScript中的语句
2012/02/27 Javascript
js模拟C#中List的简单实例
2014/03/06 Javascript
iframe实用操作锦集
2014/04/22 Javascript
jquery插件ContextMenu设置右键菜单
2017/03/13 Javascript
JS实现上传图片实时预览功能
2017/05/22 Javascript
jQuery+C#实现参数RSA加密传输功能【附jsencrypt.js下载】
2017/06/26 jQuery
浅谈Vue.js中ref ($refs)用法举例总结
2017/12/19 Javascript
详解express + mock让前后台并行开发
2018/06/06 Javascript
小程序开发踩坑:页面窗口定位(相对于浏览器定位)(推荐)
2019/04/25 Javascript
详解Vue 如何监听Array的变化
2019/06/06 Javascript
vscode中eslint插件的配置(prettier配置无效)
2019/09/10 Javascript
过滤器vue.filters的使用方法实现
2019/09/18 Javascript
Vue+Openlayers自定义轨迹动画
2020/09/24 Javascript
[17:45]DOTA2 HEROES教学视频教你分分钟做大人-军团指挥官
2014/06/11 DOTA
[00:06]Yes,it worked!小卡尔成功穿越时空加入战场!
2019/07/20 DOTA
Python中使用select模块实现非阻塞的IO
2015/02/03 Python
Python生成随机MAC地址
2015/03/10 Python
Python利用ElementTree模块处理XML的方法详解
2017/08/31 Python
Python实现查找二叉搜索树第k大的节点功能示例
2019/01/24 Python
罗德与泰勒百货官网:Lord & Taylor
2016/08/12 全球购物
Vilebrequin美国官方网上商店:法国豪华泳装品牌
2020/02/22 全球购物
毕业实习评语
2014/02/10 职场文书
读书之星事迹材料
2014/05/12 职场文书
上课迟到检讨书
2015/05/06 职场文书
小学生纪律委员竞选稿
2015/11/19 职场文书
互联网的下一个风口:新的独角兽将诞生
2019/08/02 职场文书
导游词之西安骊山
2019/12/20 职场文书
Django集成富文本编辑器summernote的实现步骤
2021/05/31 Python
一文搞懂php的垃圾回收机制
2021/06/18 PHP
Java使用httpRequest+Jsoup爬取红蓝球号码
2021/07/02 Java/Android