이 글에서는 주로 WeChat 애플릿 라벨 구성 요소에 대한 자세한 설명과 간단한 예를 소개합니다. 필요한 친구는
구현 렌더링을 참조할 수 있습니다:
는 양식 구성 요소의 유용성을 향상시키는 데 사용됩니다. for
속성을 사용하여 해당 id
을 찾거나, 레이블 아래에 컨트롤을 배치하면 해당 컨트롤이 실행됩니다.
for
은 내부 컨트롤보다 우선순위가 높습니다. 내부 컨트롤이 여러 개인 경우 기본적으로 첫 번째 컨트롤이 실행됩니다.
현재 바인딩할 수 있는 컨트롤은 button
, checkbox
, radio
, switch
입니다.
属性名 | 类型 | 说明 |
---|---|---|
for | String | 绑定控件的id |
샘플 코드:
<view class="section section_gap"> <view class="section__title">表单组件在label内</view> <checkbox-group class="group" bindchange="checkboxChange"> <view class="label-1" wx:for-items="{{checkboxItems}}"> <label> <checkbox hidden value="{{item.name}}" checked="{{item.checked}}"></checkbox> <view class="label-1__icon"> <view class="label-1__icon-checked" style="opacity:{{item.checked ? 1: 0}}"></view> </view> <text class="label-1__text">{{item.value}}</text> </label> </view> </checkbox-group> </view> <view class="section section_gap"> <view class="section__title">label用for标识表单组件</view> <radio-group class="group" bindchange="radioChange"> <view class="label-2" wx:for-items="{{radioItems}}"> <radio id="{{item.name}}" hidden value="{{item.name}}" checked="{{item.checked}}"></radio> <view class="label-2__icon"> <view class="label-2__icon-checked" style="opacity:{{item.checked ? 1: 0}}"></view> </view> <label class="label-2__text" for="{{item.name}}"><text>{{item.name}}</text></label> </view> </radio-group> </view> <view class="section section_gap"> <view class="section__title">绑定button</view> <label class="label-3"> <text>点击这段文字,button会被选中</text> </label> <view class="btn-area"> <button type="default" name="1" bindtap="tapEvent">按钮</button> </view> </view> <view class="section section_gap"> <view class="section__title">label内有多个时选中第一个</view> <label class="label-4"> <checkbox> 选中我 </checkbox> <checkbox> 选不中 </checkbox> <checkbox> 选不中 </checkbox> <checkbox> 选不中 </checkbox> <view class="label-4_text">点我会选中第一个</view> </label> </view>
Page({ data: { checkboxItems: [ {name: 'USA', value: '美国'}, {name: 'CHN', value: '中国', checked: 'true'}, {name: 'BRA', value: '巴西'}, {name: 'JPN', value: '日本', checked: 'true'}, {name: 'ENG', value: '英国'}, {name: 'TUR', value: '法国'}, ], radioItems: [ {name: 'USA', value: '美国'}, {name: 'CHN', value: '中国', checked: 'true'}, {name: 'BRA', value: '巴西'}, {name: 'JPN', value: '日本'}, {name: 'ENG', value: '英国'}, {name: 'TUR', value: '法国'}, ], hidden: false }, checkboxChange: function(e) { var checked = e.detail.value var changed = {} for (var i = 0; i < this.data.checkboxItems.length; i ++) { if (checked.indexOf(this.data.checkboxItems[i].name) !== -1) { changed['checkboxItems['+i+'].checked'] = true } else { changed['checkboxItems['+i+'].checked'] = false } } this.setData(changed) }, radioChange: function(e) { var checked = e.detail.value var changed = {} for (var i = 0; i < this.data.radioItems.length; i ++) { if (checked.indexOf(this.data.radioItems[i].name) !== -1) { changed['radioItems['+i+'].checked'] = true } else { changed['radioItems['+i+'].checked'] = false } } this.setData(changed) } })
.label-1, .label-2{ margin-bottom: 15px; } .label-1__text, .label-2__text { display: inline-block; vertical-align: middle; } .label-1__icon { position: relative; margin-right: 10px; display: inline-block; vertical-align: middle; width: 18px; height: 18px; background: #fcfff4; } .label-1__icon-checked { position: absolute; top: 3px; left: 3px; width: 12px; height: 12px; background: #1aad19; } .label-2__icon { position: relative; display: inline-block; vertical-align: middle; margin-right: 10px; width: 18px; height: 18px; background: #fcfff4; border-radius: 50px; } .label-2__icon-checked { position: absolute; left: 3px; top: 3px; width: 12px; height: 12px; background: #1aad19; border-radius: 50%; } .label-4_text{ text-align: center; margin-top: 15px; }
관련 기사:
WeChat 애플릿 데이터 액세스 예시에 대한 자세한 설명
WeChat 애플릿 개발 튜토리얼 예시의 단계에 대한 자세한 설명
WeChat 미니 프로그램 개발 예시 미니 프로그램 아키텍처
위 내용은 WeChat 애플릿 라벨 구성 요소 세부 예제 코드의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!