This repository was archived by the owner on Aug 21, 2019. It is now read-only.
File tree Expand file tree Collapse file tree 11 files changed +130
-48
lines changed Expand file tree Collapse file tree 11 files changed +130
-48
lines changed Original file line number Diff line number Diff line change 6
6
"Page": false,
7
7
"Component": false,
8
8
"App": false,
9
- "wx": false
9
+ "wx": false,
10
+ "Behavior": false
10
11
},
11
12
"parser": "babel-eslint",
12
13
"rules": {
Original file line number Diff line number Diff line change 2
2
data : {
3
3
} ,
4
4
5
- onLoad : function ( ) {
5
+ onLoad ( ) {
6
6
7
7
} ,
8
8
9
- onShow : function ( ) {
9
+ onShow ( ) {
10
10
} ,
11
- } )
11
+
12
+ getPhoneNumber ( e ) {
13
+ console . log ( e ) ;
14
+ }
15
+ } ) ;
Original file line number Diff line number Diff line change 2
2
3
3
<zan-panel title="普通按钮">
4
4
<zan-button-group>
5
- <zan-button>取消订单</zan-button>
5
+ <zan-button
6
+ open-type="getPhoneNumber"
7
+ bind:getphonenumber="getPhoneNumber"
8
+ >获取电话</zan-button>
6
9
<zan-button type="primary">确认付款</zan-button>
7
10
<zan-button type="danger">确认付款</zan-button>
8
11
<zan-button type="warn">确认付款</zan-button>
Original file line number Diff line number Diff line change 2
2
"navigationBarTitleText" : " Field 输入框" ,
3
3
"usingComponents" : {
4
4
"zan-button" : " ../../dist/btn/index" ,
5
+ "zan-button-group" : " ../../dist/btn-group/index" ,
5
6
"zan-field" : " ../../dist/field/index" ,
6
7
"zan-panel" : " ../../dist/panel/index" ,
7
8
"doc-page" : " ../../components/doc-page/index"
Original file line number Diff line number Diff line change 30
30
</zan-field>
31
31
</zan-panel>
32
32
33
- <view class=" zan-btns" >
33
+ <zan-button-group >
34
34
<zan-button type="primary" bind:btnclick="clearInput">清除输入</zan-button>
35
- </view >
35
+ </zan-button-group >
36
36
37
37
<!-- 去除标题后的输入框样式 -->
38
38
<zan-panel title="无标题输入框">
43
43
</zan-field>
44
44
</zan-panel>
45
45
46
- <view class=" zan-btns" >
46
+ <zan-button-group >
47
47
<zan-button type="primary" bind:btnclick="clearTextarea">清除输入</zan-button>
48
- </view >
48
+ </zan-button-group >
49
49
50
50
<!-- 使用 Field 圆角样式 -->
51
51
<zan-panel title="圆角输入框">
74
74
>
75
75
</zan-field>
76
76
</zan-panel>
77
-
78
- <!-- <view class="zan-panel-title">Form 表单中的field应用</view> -->
79
- <!-- <form bindsubmit="formSubmit" bindreset="formReset">
80
- <view class="zan-panel">
77
+
78
+ <zan-panel title="Form 表单中的field应用">
79
+ <form bindsubmit="formSubmit" bindreset="formReset">
81
80
<zan-field
82
81
name="{{ config.form.name.name }}"
83
82
placeholder="{{ config.form.name.placeholder }}"
89
88
input-type="{{ config.form.tel.inputType }}"
90
89
>
91
90
</zan-field>
92
- <view class="zan-btns">
93
- <button
94
- class="zan-btn zan-btn--primary"
95
- formType="submit">提交数据</button>
96
- <button
97
- class="zan-btn"
98
- formType="reset">重置数据</button>
99
- </view>
100
- </view>
101
- </form> -->
91
+ <button type="primary" form-type="submit">提交表单</button>
92
+ </form>
93
+ </zan-panel>
102
94
</doc-page>
Original file line number Diff line number Diff line change 76
76
| plain | Boolean | 否 | false | 按钮是否镂空,默认为false |
77
77
| disabled | Boolean | 否 | false | 按钮是否禁用,默认为false |
78
78
| loading | Boolean | 否 | false | 按钮加载状态,默认为false |
79
+ | openType | String | 否 | - | 微信开放能力 |
80
+ | appParameter | String | 否 | - | 打开 APP 时,向 APP 传递的参数 |
81
+ | hoverStartTime | Number | 否 | 20 | 按住后多久出现点击态,单位毫秒 |
82
+ | hoverStayTime | Number | 否 | 70 | 手指松开后点击态保留时间,单位毫秒 |
83
+ | lang | String | 否 | en | 指定返回用户信息的语言,zh_CN 简体中文,zh_TW 繁体中文,en 英文 |
84
+ | sessionFrom | String | 否 | - | 会话来源 |
85
+ | sendMessageTitle | String | 否 | 当前标题 | 会话内消息卡片标题 |
86
+ | sendMessagePath | String | 否 | 当前分享路径 | 会话内消息卡片点击跳转小程序路径 |
87
+ | sendMessageImg | String | 否 | 截图 | 会话内消息卡片图片 |
88
+ | showMessageCard | String | 否 | false | 显示会话内消息卡片 |
89
+
90
+ ### 事件
91
+ | 事件名称 | 说明 | 回调参数 |
92
+ | -----------| -----------| -----------|
93
+ | btnclick | 按钮在可用状态被点击时触发 | |
94
+ | disabledclick | 在传入的 disabled 为 true 时,点击按钮会触发此事件 | |
95
+ | getuserinfo | 用户点击该按钮时,会返回获取到的用户信息,从返回参数的detail中获取到的值同wx.getUserInfo | |
96
+ | contact | 客服消息回调 | |
97
+ | getphonenumber | 获取用户手机号回调 | |
98
+ | error | 当使用开放能力时,发生错误的回调 | |
Original file line number Diff line number Diff line change
1
+ const nativeButtonBehavior = require ( './native-button-behaviors' ) ;
2
+
1
3
Component ( {
2
4
externalClasses : [ 'custom-class' ] ,
5
+ behaviors : [ nativeButtonBehavior ] ,
3
6
relations : {
4
7
'../btn-group/index' : {
5
8
type : 'parent' ,
@@ -31,10 +34,6 @@ Component({
31
34
loading : {
32
35
type : Boolean ,
33
36
value : false ,
34
- } ,
35
- openType : {
36
- type : String ,
37
- value : ''
38
37
}
39
38
} ,
40
39
@@ -45,6 +44,10 @@ Component({
45
44
46
45
methods : {
47
46
handleTap ( ) {
47
+ if ( this . data . disabled ) {
48
+ this . triggerEvent ( 'disabledclick' )
49
+ return ;
50
+ }
48
51
this . triggerEvent ( 'btnclick' ) ;
49
52
} ,
50
53
Original file line number Diff line number Diff line change 1
1
<button
2
2
class="custom-class zan-btn {{ inGroup ? 'zan-btn--group' : '' }} {{ isLast ? 'zan-btn--last' : '' }} {{size ? 'zan-btn--'+size : ''}} {{size === 'mini' ? 'zan-btn--plain' : ''}} {{plain ? 'zan-btn--plain' : ''}} {{type ? 'zan-btn--'+type : ''}} {{loading ? 'zan-btn--loading' : ''}} {{disabled ? 'zan-btn--disabled' : ''}}"
3
- disabled="{{ disabled }}"
4
3
open-type="{{ openType }}"
4
+ app-parameter="{{ appParameter }}"
5
+ hover-stop-propagation="{{ hoverStopPropagation }}"
6
+ hover-start-time="{{ hoverStartTime }}"
7
+ hover-stay-time="{{ hoverStayTime }}"
8
+ lang="{{ lang }}"
9
+ session-from="{{ sessionFrom }}"
10
+ send-message-title="{{ sendMessageTitle }}"
11
+ send-message-path="{{ sendMessagePath }}"
12
+ send-message-img="{{ sendMessageImg }}"
13
+ show-message-card="{{ showMessageCard }}"
5
14
bindtap="handleTap"
15
+ bindcontact="bindcontact"
16
+ bindgetuserinfo="bindgetuserinfo"
17
+ bindgetphonenumber="bindgetphonenumber"
18
+ binderror="binderror"
6
19
>
7
20
<slot></slot>
8
21
</button>
Original file line number Diff line number Diff line change
1
+ module . exports = Behavior ( {
2
+ properties : {
3
+ loading : Boolean ,
4
+ // 在自定义组件中,无法与外界的 form 组件联动,暂时不开放
5
+ // formType: String,
6
+ openType : String ,
7
+ appParameter : String ,
8
+ // 暂时不开放,直接传入无法设置样式
9
+ // hoverClass: {
10
+ // type: String,
11
+ // value: 'button-hover'
12
+ // },
13
+ hoverStopPropagation : Boolean ,
14
+ hoverStartTime : {
15
+ type : Number ,
16
+ value : 20
17
+ } ,
18
+ hoverStayTime : {
19
+ type : Number ,
20
+ value : 70
21
+ } ,
22
+ lang : {
23
+ type : String ,
24
+ value : 'en'
25
+ } ,
26
+ sessionFrom : {
27
+ type : String ,
28
+ value : ''
29
+ } ,
30
+ sendMessageTitle : String ,
31
+ sendMessagePath : String ,
32
+ sendMessageImg : String ,
33
+ showMessageCard : String
34
+ } ,
35
+ methods : {
36
+ bindgetuserinfo ( { detail = { } } = { } ) {
37
+ this . triggerEvent ( 'getuserinfo' , detail ) ;
38
+ } ,
39
+ bindcontact ( { detail = { } } = { } ) {
40
+ this . triggerEvent ( 'contact' , detail ) ;
41
+ } ,
42
+ bindgetphonenumber ( { detail = { } } = { } ) {
43
+ this . triggerEvent ( 'getphonenumber' , detail ) ;
44
+ } ,
45
+ binderror ( { detail = { } } = { } ) {
46
+ this . triggerEvent ( 'error' , detail ) ;
47
+ }
48
+ }
49
+ } ) ;
Original file line number Diff line number Diff line change 1
1
Component ( {
2
+ behaviors : [ 'wx://form-field' ] ,
3
+
2
4
properties : {
3
5
title : String ,
4
- name : String ,
5
6
type : {
6
7
type : String ,
7
8
value : 'input'
8
9
} ,
9
- name : String ,
10
- value : String ,
11
10
disabled : Boolean ,
12
11
inputType : {
13
12
type : String ,
@@ -28,20 +27,19 @@ Component({
28
27
} ,
29
28
30
29
methods : {
31
- handleZanFieldChange ( event ) {
32
- console . info ( '[zan:field:change]' , event ) ;
30
+ handleFieldChange ( event ) {
31
+ const { detail = { } } = event ;
32
+ const { value = '' } = detail ;
33
+ this . setData ( { value } ) ;
34
+
33
35
this . triggerEvent ( 'change' , event ) ;
34
36
} ,
35
37
36
- handleZanFieldFocus ( event ) {
37
- console . info ( '[zan:field:focus]' , event ) ;
38
-
38
+ handleFieldFocus ( event ) {
39
39
this . triggerEvent ( 'focus' , event ) ;
40
40
} ,
41
41
42
- handleZanFieldBlur ( event ) {
43
- console . info ( '[zan:field:blur]' , event ) ;
44
-
42
+ handleFieldBlur ( event ) {
45
43
this . triggerEvent ( 'blur' , event ) ;
46
44
}
47
45
}
You can’t perform that action at this time.
0 commit comments