• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >微信小程序 > 小程序中数据拷贝的问题解析

小程序中数据拷贝的问题解析

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-11-30

匿名通过本文主要向大家介绍了数据拷贝等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
本篇文章给大家带来的内容是关于小程序中数据拷贝的问题解析 ,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

近期有帮同事做一个多商品评论的页面,多商品,顾名思义就是很多个商品,每个商品有星星评价,上传图片信息以及评论内容,

因为原先有写过公众号这个功能,于是自告奋勇的去写小程序的多商品评论了,结果就掉坑里了............

思路很简单 首先造一个星星的数组,五星好评就是五个星星的图片,是这样:

starList: [{
       srca: "img/star02@3x.png",
       index: "1"
       }, {
       srca: "img/star02@3x.png",
       index: "2"
       }, {
       srca: "img/star02@3x.png",
       index: "3"
       }, {
       srca: "img/star02@3x.png",
       index: "4"
       }, {
       srca: "img/star02@3x.png",
       index: "5"
       }],

懒得取下标直接用index代表评分,然后根据后台返回的商品列表数组定义一个新数组pductList进行循环定义变量starLista赋值为数组

for(var i = 0; i < response.commoditys.length; i++) {
               response.commoditys[i].starLista = starList;
  }

同时有个多张图片上传的list同理进行操作,然后给循环出的星星绑定点击事件取它的下标和index进行判断循环每个商品下的星星数组动态更改src

  for(var i = 0; i < app.dataList[index].starList.length; i++)
   {
     app.dataList[index].starList[i].srca = "img/star02@3x.png";
     evaluateList[index].mark = idx + 1;
     if(i <= idx)
      {
        app.dataList[index].starList[i].srca = "img/star01@3x.png";
       }
       evaluateList[index].mark = idx + 1;
       evaluateList[index].commodityid = cId;
 }

最后取pductList 你需要的值基本上就都在这个数组里面了 ,

--------------------------------------------------------------掉坑-----------------------------------------------

开始写小程序就按照这样的思路一直写写写,然而写到一半以后突然发现,我点击了一行小星星,所有的星星颜色都会变化,经历了排查以及抓耳挠腮 坐如针垫,东张西望之后,终于发现

在定义的新数组pductList中根据下标更改starLista 原来小星星的数组starList,最初定义的数组也会随之改变

又经历了百度 谷歌 csdn 博客园等等之后 终于想起一计,将原星星数组starList 先转为字符串格式,在给定义的新数组pductList赋值的时候在转为json格式

let starListc=JSON.stringify(starList);
for(let i = 0; i < response.commoditys.length; i++) {
               response.commoditys[i].starLista = JSON.parse(starListc);
  }

终于解决问题,应该是涉及到小程序的数据深拷贝的原因,这样处理一下更改的应该就是字符串而不会更改原数组,也考虑过在造个数组去赋值,但是没有这个方法简单粗暴,对于这个搞了一个早上的坑,谨以此贴,留作纪念,以及警醒自己。。。。。。。。。。。。。。。

相关推荐:

备份和拷贝MYSQL数据库_MySQL

javascript对浅拷贝和深拷贝的详解

以上就是小程序中数据拷贝的问题解析的详细内容,更多请关注微课江湖其它相关文章!

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

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

相关文章

  • 2018-11-30四大微信小程序开发工具测评结果出炉
  • 2018-11-30怎样使用微信小程序做出添加收藏
  • 2018-11-30小程序开发放大淡出的麦克风动画效果代码
  • 2018-11-30快递查询-微信小程序开发实例教程
  • 2018-11-30总结微信小程序开发传值取值的几种方法
  • 2018-11-30微信小程序之自定义创建实例介绍
  • 2018-11-30微信小程序轻松上手之用swiper实现图片轮番效果
  • 2018-11-30微信小程序商城项目中商品属性分类的实现
  • 2018-11-30微信小程序组件label标签解读和分析实例
  • 2018-11-30微信小程序rpx尺寸单位以及样式用法详解

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 详解小程序开发之wx:key
    • 从零开始开发微信小程序4种页面跳转的方法 (六)
    • 微信小程序开发工具 for mac 简介及快捷键
    • 微信小程序:文件管理 API说明
    • 小程序开发使用Immutable.js的代码实例
    • 微信小程序中如何引用wxml文件、视图模版的使用方法
    • 微信小程序条件渲染详细介绍
    • 微信小程序实例:实现随机验证码(附代码)
    • 微信小程序的局部元素的隐藏
    • 小程序开发之场景值说明

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

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