智能照明系统APP-本地串口
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
LightingSystemApp-serial/.svn/pristine/9a/9a798e7eb351cb656fa4c867f89...

51 lines
1.1 KiB

<template>
<uni-label
:class="{'uni-label-pointer':pointer}"
v-on="$listeners"
@click="_onClick"
>
<slot />
</uni-label>
</template>
<script>
import {
emitter
} from 'uni-mixins'
export default {
name: 'Label',
mixins: [emitter],
props: {
for: {
type: String,
default: ''
}
},
computed: {
pointer () {
return this.for || (this.$slots.default && this.$slots.default.length)
}
},
methods: {
_onClick ($event) {
let stopPropagation = /^uni-(checkbox|radio|switch)-/.test($event.target.className)
if (!stopPropagation) {
stopPropagation = /^uni-(checkbox|radio|switch|button)$/i.test($event.target.tagName)
}
if (stopPropagation) {
return
}
if (this.for) {
UniViewJSBridge.emit('uni-label-click-' + this.$page.id + '-' + this.for, $event, true)
} else {
this.$broadcast(['Checkbox', 'Radio', 'Switch', 'Button'], 'uni-label-click', $event, true)
}
}
}
}
</script>
<style>
.uni-label-pointer {
cursor: pointer;
}
</style>