【移动应用开发技术】微信小程序如何实现流程进度功能_第1页
【移动应用开发技术】微信小程序如何实现流程进度功能_第2页
【移动应用开发技术】微信小程序如何实现流程进度功能_第3页
【移动应用开发技术】微信小程序如何实现流程进度功能_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

【移动应用开发技术】微信小程序如何实现流程进度功能

在下给大家分享一下微信小程序如何实现流程进度功能,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!需求:没完成的灰色小圆点表示完成的使用蓝色小圆点设置当前状态使用有外圈的小圆点表示实现起来比较简单,实现思路,使用一个列表实现,列表中的每一个item的样式如下图使用win10画板画的不好看图上的意思就是每个item前面有一段线条中间是个圆圈然后后面有一段线条。之所以这样是因为下面的文字需要居中显示在圆圈的下面。如果不需要文字的话可以一个圆圈后面跟一条直线会更简单一点。按照上面的图片,html布局为下面

<view

class='order_process'>

<view

class='process_wrap'

wx:for="{{processData}}"

wx:key="">

<view

class='process'>

<view

class='process_line'

style="background:{{item.start}}"></view>

<image

class='process_icon'

src="{{item.icon}}"></image>

<view

class='process_line'

style="background:{{item.end}}"></view>

</view>

<text

class='process_name'>{{}}</text>

</view>

</view>OK列表肯定需要一个数组啦数组如下面processData:

[{

name:

'提交工单',

start:

'#fff',

end:

'#EFF3F6',

icon:

'../../img/process_1.png'

},

{

name:

'已接单',

start:

'#EFF3F6',

end:

'#EFF3F6',

icon:

'../../img/process_1.png'

},

{

name:

'开始维修',

start:

'#EFF3F6',

end:

'#EFF3F6',

icon:

'../../img/process_1.png'

},

{

name:

'维修结束',

start:

'#EFF3F6',

end:

'#EFF3F6',

icon:

'../../img/process_1.png'

},

{

name:

'已确认',

start:

'#EFF3F6',

end:

'#fff',

icon:

'../../img/process_1.png'

}],

},按照上面的item图片我们会看到直接显示的话两边会多处一条线来怎么去掉这两条线呢,很简单,让父容器的背景颜色跟先的颜色一样就好啦。把父布局的背景改为白色,然后控制列表中第一个item中的前面的线段的颜色为白色,最后一个item中的后面的线段为白色。这样看起来两边的线段就去掉了当数据改变的时候,我们只需要改变数组中对象的属性就好了。不如下面的做参考//进度条的状态

setPeocessIcon:

function

()

{

var

index

=

0//记录状态为1的最后的位置

var

processArr

=

cessData

//

console.log("progress",

this.data.detailDgress)

for

(var

i

=

0;

i

<

this.data.detailDgress.length;

i++)

{

var

item

=

this.data.detailDgress[i]

processArr[i].name

=

item.word

if

(item.state

==

1)

{

index

=

i

processArr[i].icon

=

"../../img/process_3.png"

processArr[i].start

=

"#45B2FE"

processArr[i].end

=

"#45B2FE"

}

else

{

processArr[i].icon

=

"../../img/process_1.png"

processArr[i].start

=

"#EFF3F6"

processArr[i].end

=

"#EFF3F6"

}

}

processArr[index].icon

=

"../../img/process_2.png"

processArr[index].end

=

"#EFF3F6"

processArr[0].start

=

"#fff"

processArr[this.data.detailDgress.length

-

1].end

=

"#fff"

this.setData({

processData:

processArr

})

},上面代码的数据中,使用state代表完成和没完成。我们把完成的设置为蓝色把没完成的设置为灰色。使用index来记录是不是当前点(当前点就是state表示完成的最后一个)。最后css中的代码也很简单.order_process

{

display:

flex;

flex-wrap:

nowrap;

padding:

10rpx

10rpx

20rpx

10rpx;

background-color:

#fff;

}

.process_wrap

{

display:

flex;

flex-direction:

column;

flex:

1;

align-items:

center;

}

.process

{

display:

flex;

align-items:

center;

width:

100%;

}

.process

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论