Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
一把秋刀鱼
uni-app
提交
60aa7de9
U
uni-app
项目概览
一把秋刀鱼
/
uni-app
与 Fork 源项目一致
Fork自
DCloud / uni-app
通知
4
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
U
uni-app
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
60aa7de9
编写于
11月 18, 2018
作者:
H
hulinneil
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
删除多余的uni自定义组件
上级
c018ec79
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
0 addition
and
367 deletion
+0
-367
examples/hello-uniapp/components/graceCountd.vue
examples/hello-uniapp/components/graceCountd.vue
+0
-94
examples/hello-uniapp/components/number-box.vue
examples/hello-uniapp/components/number-box.vue
+0
-139
examples/hello-uniapp/components/segmented-control.vue
examples/hello-uniapp/components/segmented-control.vue
+0
-134
未找到文件。
examples/hello-uniapp/components/graceCountd.vue
已删除
100755 → 0
浏览文件 @
c018ec79
<
template
name=
"graceCountd"
>
<view
class=
"grace-countdown"
>
<view
class=
"grace-countdown-numbers"
:style=
"
{borderColor:borderColor, color:fontColor, background:bgrColor}">
{{
h
}}
</view>
<view
class=
"grace-countdown-splitor"
:style=
"
{color:splitorColor}">:
</view>
<view
class=
"grace-countdown-numbers"
:style=
"
{borderColor:borderColor, color:fontColor, background:bgrColor}">
{{
i
}}
</view>
<view
class=
"grace-countdown-splitor"
:style=
"
{color:splitorColor}">:
</view>
<view
class=
"grace-countdown-numbers"
:style=
"
{borderColor:borderColor, color:fontColor, background:bgrColor}">
{{
s
}}
</view>
</view>
</
template
>
<
script
>
export
default
{
name
:
"
graceCountd
"
,
props
:
{
bgrColor
:
{
type
:
String
,
default
:
"
#FFFFFF
"
},
borderColor
:{
type
:
String
,
default
:
"
#000000
"
},
fontColor
:
{
type
:
String
,
value
:
"
#000000
"
},
splitorColor
:
{
type
:
String
,
default
:
"
#000000
"
},
timer
:{
type
:
String
,
default
:
""
}
},
data
()
{
return
{
setTime
:
null
,
h
:
'
00
'
,
i
:
'
00
'
,
s
:
'
00
'
,
leftTime
:
0
}
},
created
:
function
(
e
){
var
reg
=
/^
([
0-9
]{4})
-
([
0-9
]{2})
-
([
0-9
]{2})
([
0-9
]{2})
:
([
0-9
]{2})
:
([
0-9
]{2})
$/
;
var
res
=
this
.
timer
.
match
(
reg
);
if
(
res
==
null
){
console
.
log
(
'
时间格式错误
'
);
return
false
;
}
else
{
var
year
=
parseInt
(
res
[
1
]);
if
(
year
<
1000
)
{
console
.
log
(
'
时间格式错误
'
);
return
false
;
}
var
month
=
parseInt
(
res
[
2
]);
var
day
=
parseInt
(
res
[
3
]);
var
h
=
parseInt
(
res
[
4
]);
if
(
h
<
0
||
h
>
24
)
{
console
.
log
(
'
时间格式错误
'
);
return
false
;
}
var
i
=
parseInt
(
res
[
5
]);
if
(
i
<
0
||
i
>
60
)
{
console
.
log
(
'
时间格式错误
'
);
return
false
;
}
var
s
=
parseInt
(
res
[
6
]);
if
(
s
<
0
||
s
>
60
)
{
console
.
log
(
'
时间格式错误
'
);
return
false
;
}
var
leftTime
=
new
Date
(
year
,
month
-
1
,
day
,
h
,
i
,
s
);
this
.
leftTime
=
leftTime
;
this
.
countDown
(
this
);
this
.
setInterValFunc
(
this
);
}
},
beforeDestroy
(){
clearInterval
(
this
.
setTime
)
},
methods
:
{
setInterValFunc
:
function
(
obj
){
this
.
setTime
=
setInterval
(
function
(){
obj
.
countDown
(
obj
);},
1000
);
},
countDown
:
function
(
self
){
var
leftTime
=
self
.
leftTime
-
new
Date
();
if
(
leftTime
>
0
)
{
var
hours
=
parseInt
(
leftTime
/
1000
/
60
/
60
,
10
);
var
minutes
=
parseInt
(
leftTime
/
1000
/
60
%
60
,
10
);
var
seconds
=
parseInt
(
leftTime
/
1000
%
60
,
10
);
}
else
{
var
hours
=
0
,
minutes
=
0
,
seconds
=
0
;
}
if
(
hours
<
10
)
{
hours
=
'
0
'
+
hours
;}
if
(
minutes
<
10
)
{
minutes
=
'
0
'
+
minutes
;
}
if
(
seconds
<
10
)
{
seconds
=
'
0
'
+
seconds
;
}
self
.
h
=
hours
;
self
.
i
=
minutes
;
self
.
s
=
seconds
;
}
}
}
</
script
>
<
style
>
.grace-countdown
{
padding
:
2
rpx
0
;
flex-wrap
:
nowrap
;}
.grace-countdown-splitor
{
width
:
auto
!important
;
justify-content
:
center
;
line-height
:
44
upx
;
padding
:
0
5
upx
;}
.grace-countdown-numbers
{
line-height
:
44
upx
;
width
:
auto
!important
;
padding
:
0
10
upx
;
justify-content
:
center
;
height
:
44
upx
;
border-radius
:
8
upx
;
margin
:
0
5
upx
;
border
:
1px
solid
#000000
;
font-size
:
22
upx
;}
</
style
>
\ No newline at end of file
examples/hello-uniapp/components/number-box.vue
已删除
100644 → 0
浏览文件 @
c018ec79
<
template
>
<view
class=
"uni-numbox"
>
<view
class=
"uni-numbox-minus"
:class=
"
{'uni-numbox-disabled': disableSubtract}" @click="_calcValue('subtract')">-
</view>
<input
class=
"uni-numbox-value"
type=
"number"
:disabled=
"disabled"
:value=
"inputValue"
@
blur=
"_onBlur"
>
<view
class=
"uni-numbox-plus"
:class=
"
{'uni-numbox-disabled': disableAdd}" @click="_calcValue('add')">+
</view>
</view>
</
template
>
<
script
>
export
default
{
name
:
'
number-box
'
,
props
:
{
value
:
{
type
:
Number
,
default
:
0
},
min
:
{
type
:
Number
,
default
:
-
Infinity
},
max
:
{
type
:
Number
,
default
:
Infinity
},
step
:
{
type
:
Number
,
default
:
1
},
disabled
:
{
type
:
Boolean
,
default
:
false
}
},
data
()
{
return
{
inputValue
:
this
.
value
}
},
computed
:
{
disableSubtract
()
{
return
this
.
value
<=
this
.
min
},
disableAdd
()
{
return
this
.
value
>=
this
.
max
}
},
watch
:
{
value
(
val
)
{
this
.
inputValue
=
val
;
},
inputValue
(
val
)
{
this
.
$emit
(
'
change
'
,
val
);
}
},
methods
:
{
_calcValue
(
type
)
{
const
scale
=
this
.
_getDecimalScale
();
let
value
=
this
.
inputValue
*
scale
;
let
step
=
this
.
step
*
scale
;
if
(
type
===
'
subtract
'
)
{
value
-=
step
}
else
if
(
type
===
'
add
'
)
{
value
+=
step
}
if
(
value
<
this
.
min
||
value
>
this
.
max
)
{
return
}
this
.
inputValue
=
value
/
scale
;
},
_getDecimalScale
()
{
let
scale
=
1
;
// 浮点型
if
(
~~
this
.
step
!==
this
.
step
)
{
scale
=
Math
.
pow
(
10
,
(
this
.
step
+
''
).
split
(
'
.
'
)[
1
].
length
);
}
return
scale
;
},
_onBlur
(
event
)
{
let
value
=
event
.
detail
.
value
;
if
(
!
value
)
{
this
.
inputValue
=
0
;
return
}
value
=
+
value
;
if
(
value
>
this
.
max
)
{
value
=
this
.
max
;
}
else
if
(
value
<
this
.
min
)
{
value
=
this
.
min
}
this
.
inputValue
=
value
}
}
}
</
script
>
<
style
>
.uni-numbox
{
display
:
flex
;
flex-direction
:
row
;
justify-content
:
flex-start
;
height
:
70
upx
;
}
.uni-numbox-minus
,
.uni-numbox-plus
{
margin
:
0
;
background-color
:
#f9f9f9
;
width
:
80
upx
;
height
:
100%
;
line-height
:
70
upx
;
text-align
:
center
;
color
:
#555555
;
}
.uni-numbox-minus
{
border
:
2
upx
solid
#cccccc
;
border-right
:
none
;
border-top-left-radius
:
6
upx
;
border-bottom-left-radius
:
6
upx
;
}
.uni-numbox-plus
{
border
:
2
upx
solid
#cccccc
;
border-left
:
none
;
border-top-right-radius
:
6
upx
;
border-bottom-right-radius
:
6
upx
;
}
.uni-numbox-value
{
border
:
2
upx
solid
#cccccc
;
background-color
:
#ffffff
;
width
:
80
upx
;
height
:
100%
;
text-align
:
center
;
}
.uni-numbox-disabled
{
color
:
#c0c0c0
;
}
</
style
>
examples/hello-uniapp/components/segmented-control.vue
已删除
100644 → 0
浏览文件 @
c018ec79
<
template
>
<view
class=
"segmented-control"
:class=
"styleType"
:style=
"wrapStyle"
>
<view
v-for=
"(item, index) in values"
class=
"segmented-control-item"
:class=
"styleType"
:key=
"index"
:style=
"index === currentIndex ? activeStyle : itemStyle"
@
click=
"onClick(index)"
>
{{
item
}}
</view>
</view>
</
template
>
<
script
>
export
default
{
name
:
'
segmented-control
'
,
props
:
{
current
:
{
type
:
Number
,
default
:
0
},
values
:
{
type
:
Array
,
default
()
{
return
[];
}
},
activeColor
:
{
type
:
String
,
default
:
'
#007aff
'
},
styleType
:
{
type
:
String
,
default
:
'
button
'
}
},
data
()
{
return
{
currentIndex
:
this
.
current
}
},
watch
:
{
current
(
val
)
{
if
(
val
!==
this
.
currentIndex
)
{
this
.
currentIndex
=
val
;
}
}
},
computed
:
{
wrapStyle
()
{
let
styleString
=
''
;
switch
(
this
.
styleType
)
{
case
'
text
'
:
styleString
=
`border:0;`
;
break
;
default
:
styleString
=
`border-color:
${
this
.
activeColor
}
`
;
break
;
}
return
styleString
;
},
itemStyle
()
{
let
styleString
=
''
;
switch
(
this
.
styleType
)
{
case
'
text
'
:
styleString
=
`color:#000;border-left:0;`
;
break
;
default
:
styleString
=
`color:
${
this
.
activeColor
}
;border-color:
${
this
.
activeColor
}
;`
;
break
;
}
return
styleString
;
},
activeStyle
()
{
let
styleString
=
''
;
switch
(
this
.
styleType
)
{
case
'
text
'
:
styleString
=
`color:
${
this
.
activeColor
}
;border-left:0;border-bottom-style:solid;`
;
break
;
default
:
styleString
=
`color:#fff;border-color:
${
this
.
activeColor
}
;background-color:
${
this
.
activeColor
}
`
;
break
;
}
return
styleString
;
}
},
methods
:
{
onClick
(
index
)
{
if
(
this
.
currentIndex
!==
index
)
{
this
.
currentIndex
=
index
;
this
.
$emit
(
'
clickItem
'
,
index
);
}
}
},
}
</
script
>
<
style
>
.segmented-control
{
display
:
flex
;
flex-direction
:
row
;
justify-content
:
center
;
width
:
100%
;
font-size
:
30
upx
;
border-radius
:
12
upx
;
box-sizing
:
border-box
;
margin
:
0
auto
;
overflow
:
hidden
;
}
.segmented-control.button
{
border
:
1
upx
solid
;
}
.segmented-control.text
{
border
:
0
;
border-radius
:
0
upx
;
}
.segmented-control-item
{
flex
:
1
;
text-align
:
center
;
line-height
:
70
upx
;
box-sizing
:
border-box
;
}
.segmented-control-item.button
{
border-left
:
1
upx
solid
;
}
.segmented-control-item.text
{
border-left
:
0
;
}
.segmented-control-item
:first-child
{
border-left-width
:
0
;
}
</
style
>
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录