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 相关文章推荐
漂亮的widgets,支持换肤和后期开发新皮肤(2007-4-27已更新1.7alpha)
Apr 27 Javascript
javascript 二进制运算技巧解析
Nov 27 Javascript
JS简单去除数组中重复项的方法
Sep 13 Javascript
DataTables+BootStrap组合使用Ajax来获取数据并且动态加载dom的方法(排序,过滤,分页等)
Nov 09 Javascript
JavaScript基于面向对象实现的猜拳游戏
Jan 03 Javascript
vue cli构建的项目中请求代理与项目打包问题
Feb 26 Javascript
15个顶级开源JavaScript框架和库
Oct 10 Javascript
用VueJS写一个Chrome浏览器插件的实现方法
Feb 27 Javascript
深入浅析nuxt.js基于ssh的vue通用框架
May 21 Javascript
jQuery实现数字华容道小游戏(实例代码)
Jan 16 jQuery
基于JavaScript的数据结构队列动画实现示例解析
Aug 06 Javascript
使用Cargo工具高效创建Rust项目
Aug 14 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插件 Simple HTML DOM 用DOM方式处理HTML
2013/07/01 PHP
yii2.0框架场景的简单使用示例
2020/01/25 PHP
TopList标签和JavaScript结合两例
2007/08/12 Javascript
JavaScript 学习笔记(十三)Dom创建表格
2010/01/21 Javascript
JavaScript实现的内存数据库LokiJS介绍和入门实例
2014/11/17 Javascript
angularJS 如何读写缓冲的方法(推荐)
2016/08/06 Javascript
JavaScript利用闭包实现模块化
2017/01/13 Javascript
JavaScript框架Angular和React深度对比
2017/11/20 Javascript
使用vue-cli+webpack搭建vue开发环境的方法
2017/12/22 Javascript
通过JS深度判断两个对象字段相同
2019/06/14 Javascript
vue 解除鼠标的监听事件的方法
2019/11/13 Javascript
javascript设计模式 ? 组合模式原理与应用实例分析
2020/04/14 Javascript
windows下python安装paramiko模块和pycrypto模块(简单三步)
2017/07/06 Python
python实现m3u8格式转换为mp4视频格式
2018/02/28 Python
对tensorflow 的模型保存和调用实例讲解
2018/07/28 Python
python3.6.3安装图文教程 TensorFlow安装配置方法
2020/06/24 Python
python八皇后问题的解决方法
2018/09/27 Python
Python3实现对列表按元组指定列进行排序的方法分析
2018/12/22 Python
python GUI图形化编程wxpython的使用
2019/07/19 Python
Django ORM 常用字段与不常用字段汇总
2019/08/09 Python
python用类实现文章敏感词的过滤方法示例
2019/10/27 Python
使用python matplotlib 画图导入到word中如何保证分辨率
2020/04/16 Python
英国在线电子和小工具商店:TecoBuy
2018/10/06 全球购物
圣诞树世界:Christmas Tree World
2019/12/10 全球购物
飞利浦美国官网:Philips美国
2020/02/28 全球购物
大专毕业生自我鉴定
2013/11/21 职场文书
《称象》教学反思
2014/04/25 职场文书
网络营销策划方案
2014/06/04 职场文书
运动会的口号
2014/06/09 职场文书
海南召开党的群众路线教育实践活动总结大会新闻稿
2014/10/21 职场文书
离职报告范文
2014/11/04 职场文书
2014年安全员工作总结
2014/11/13 职场文书
当你找不到方向的时候,不妨读读刘备的一生
2019/08/05 职场文书
PHP基本语法
2021/03/31 PHP
MySql 缓存查询原理与缓存监控和索引监控介绍
2021/07/02 MySQL
万能密码的SQL注入漏洞其PHP环境搭建及防御手段
2021/09/04 SQL Server