1.子组件页面结构

//NoticesMarquee 组件
<view v-for="(item, index) in tempList" :key="index" >
{{item.Title}}
</view>

2.父组件中使用

在父组件中引用子组件并传递值。

<template>
<view>
<!--使用子组件 -->
<notices-marquee :items="noticesList" ></notices-marquee>
</view>
</template> <script>
import NoticesMarquee from '@/components/index/NoticesMarquee'
export default {
components:{
NoticesMarquee
},
data() {
return {
noticesList: [{
Title: '4874545454554545454545454',
Id: 2
},
{
Title: '7888844844456454564564565465656',
Id: 1
},
{
Title: '78947898526665656+56+5+656',
Id: 3
},
],
};
}
}
</script>
<style> </style>

3.问题描述

3.1 问题概述:

现象为:在setTimeout()中修改值,但是对 items这个数组并不起作用,即修改后的数组与原来一致,并没有达到修改数组的效果,代码如下:

export default {
props: ['items'],
methods: {
showMarquee: function() {
let _this = this;
setTimeout(function() {
_this.items.push(_this.items[0]);
_this.items.shift()
}, 500)
},
},
}

3.1 解决办法:

使用中间临时数组(tempList(),在created()时就开始将值传递给临时数组,防止出现延时情况,后续单独操作临时数组即可。

export default {
props: ['items'],
data() {
return {
tempList: []
}
},
methods: {
showMarquee: function() {
let _this = this;
setTimeout(function() {
_this.tempList.push(_this.tempList[0]);
_this.tempList.shift()
}, 500)
},
},
created() {
this.tempList = this.items
}
}

推荐是最好的支持,关注是最大的鼓励。亲爱的朋友,很荣幸在园子里遇到您,希望能与您一起学习~~~。

解决uni-app props 传递数组修改后不能使用问题的更多相关文章

  1. 通过进入单用户模式解决linux中的rc.local修改后无法启动的问题

    问题:本想将teamviewer这个软件随linux自启动,所以将其启动命令放在rc.local中,但是重启后发现linux启动不起来了,系统前面都是正常启动的,就是无法进入帐户登陆界面,无法输入ro ...

  2. [转] eclipse SVN中文件修改后图标不变黑星解决

    原文地址:http://blog.csdn.net/luwei42768/article/details/39225641 版权声明:本文为博主原创文章,未经博主允许不得转载. 如上图, 如果文件修改 ...

  3. wamp中修改后mysq数据库l闪退无法登陆解决办法

    WampServer安装后密码是空的,   修改一般有三种方式:   一是通过phpMyAdmin直接修改:   二是使用WAMP的MySql控制台修改.     三是重置密码    第一种:   1 ...

  4. win7 Host文件修改后无效的解决办法

    win7 Host文件修改后无效的解决办法 正常情况下hosts文件随时修改随时生效,如果出现修改后不生效的情况,首先确定文件是ascii编码,以windows格式为换行符,然后依次采用如下方法  1 ...

  5. SpringBoot集成MybatisPlus解决Mapper文件修改后动态刷新的问题

    很多人在使用SpringBoot集成Mybatis或者MybatisPlus的时候在查询复杂的情况下会写mapper文件,虽然说MyBatisPlus提供了常用的增删查改,但还是难以应付复杂的查询.关 ...

  6. Eclipse中js文件修改后浏览器不能及时更新的解决办法

    项目中js文件修改后浏览器不能及时更新的解决办法 转载:http://www.codeweblog.com/%E9%A1%B9%E7%9B%AE%E4%B8%ADjs%E6%96%87%E4%BB%B ...

  7. host文件简介及修改后不能保存解决方法

    一.文件概述 Hosts是一个没有扩展名的系统文件,可以用记事本等工具打开,其作用就是将一些常用的网址域名与其对应的IP地址建立一个关联“数据库”,当用户在浏览器中输入一个需要登录的网址时,系统会首先 ...

  8. vue组件详解(二)——使用props传递数据

    在 Vue 中,父子组件的关系可以总结为 props向下传递,事件向上传递.父组件通过 props 给子组件下发数据,子组件通过事件给父组件发送消息.看看它们是怎么工作的.  一.基本用法 组件不仅仅 ...

  9. vue组件详解——使用props传递数据

    每天学习一点点 编程PDF电子书.视频教程免费下载:http://www.shitanlife.com/code 在 Vue 中,父子组件的关系可以总结为 props向下传递,事件向上传递.父组件通过 ...

随机推荐

  1. python 多线程共享全局变量的问题

    多线程都是在同一个进程中运行的.因此在进程中的全局变量所有线程都是可共享的. 这就造成了一个问题,因为线程执行的顺序是无序的.有可能会造成数据错误. 直白理解:也就是多线程执行的时候,同时对一个全局变 ...

  2. 银行家算法C++程序

    此程序在Windows10    CodeBlocks17.12环境下测试运行,其他编程环境未经测试! 作业需求↓↓↓↓↓↓ 运行效果图如下 (codeblocks下载地址http://www.cod ...

  3. Sqoop简介

    一  Sqoop是什么 Sqoop:SQL-to-Hadoop 连接传统关系型数据库和Hadoop的桥梁 把关系型数据库的数据导入到 Hadoop 系统 ( 如 HDFS.HBase 和 Hive) ...

  4. 移除元素-leetcode-27

    class Solution {public:    int removeElement(vector<int>& nums, int val) {        if(nums. ...

  5. cmake add_custom_command 使用

    cmake add_custom_command 使用 今天整理编译工程,想在编译工程前面用tolua生成c文件, 使用命令add_custom_command后,附加的命令并不执行,如下: add_ ...

  6. source-insight 常用操作

    [Ctrl + ] 跳转到函数.宏.变量 等定义处. [Alt  > ] 跳转到最近光标停留位置. [Alt  < ] 跳转到上次近光标停留位置. [Ctrl Shift [ ] 块位置开 ...

  7. Idea动态java模板配置

    使用全能idea工具可以可以大大的提升开发效率,其中有个特别有用技能跟大家分享一下. 相比大家都用过idea的快速插入代码功能,插入诸如getter,setter还有构造函数生成,做到了只需一键点击就 ...

  8. android studio 升级到3.3.1后,提示程序包不存在

    android studio 升级到3.3.1后,提示程序包不存在 原因 主Module--A 引用了其他Moduel--B里的jar库, 只需要把B的dependencies改成如下(implent ...

  9. 关于sql 索引

    1.聚集索引一个表只能有一个,而非聚集索引有个表能有多个 2.聚集索引和非聚集索引的根本区别是表记录的排列顺序和与索引的排列顺序是否一致,其实理解起来非常简单,还是举字典的例子:如果按照拼音查询,那么 ...

  10. linux tee

    tee 功能说明:读取标准输入的数据,并将其内容输出成文件. 语 法:tee [-ai][--help][--version][文件...] 补充说明:tee指令会从标准输入设备读取数据,将其内容输出 ...