2018-07-29 20:18:06 +02:00
|
|
|
// +build js
|
|
|
|
|
2018-07-18 21:55:44 +00:00
|
|
|
package main
|
|
|
|
|
|
|
|
import (
|
|
|
|
"github.com/gopherjs/gopherjs/js"
|
2018-09-13 19:49:47 +02:00
|
|
|
"github.com/mame82/hvue"
|
2018-07-18 21:55:44 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
type CompToggleSwitchData struct {
|
|
|
|
*js.Object
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
func newCompToggleSwitchData(vm *hvue.VM) interface{} {
|
|
|
|
newVM := &CompToggleSwitchData{
|
|
|
|
Object: js.Global.Get("Object").New(),
|
|
|
|
}
|
|
|
|
return newVM
|
|
|
|
}
|
|
|
|
|
|
|
|
func InitCompToggleSwitch() {
|
|
|
|
hvue.NewComponent(
|
|
|
|
"toggle-switch",
|
|
|
|
hvue.Template(compToggleSwitchTemplate),
|
|
|
|
hvue.DataFunc(newCompToggleSwitchData),
|
|
|
|
hvue.PropObj("value", hvue.Types(hvue.PBoolean), hvue.Required),
|
|
|
|
)
|
|
|
|
}
|
|
|
|
|
|
|
|
const (
|
|
|
|
|
|
|
|
compToggleSwitchTemplate = `
|
|
|
|
<label class="toggle-switch">
|
|
|
|
<input type="checkbox" v-bind:checked="value" v-on:change="$emit('input', $event.target.checked)">
|
|
|
|
<div><span class="on">On</span><span class="off">Off</span></div>
|
|
|
|
<span class="toggle-switch-slider"></span>
|
|
|
|
</label>
|
|
|
|
`
|
|
|
|
)
|
|
|
|
|
2018-08-31 15:48:32 +02:00
|
|
|
/*
|
|
|
|
<script src="Vue.js"></script>
|
|
|
|
|
|
|
|
<script>Vue.Register()</script>
|
|
|
|
|
|
|
|
|
|
|
|
<div id="app">
|
|
|
|
<toggle-switch ledcolor="colorvar">
|
|
|
|
|
|
|
|
</div>
|
|
|
|
Vue.Register("#app")
|
|
|
|
*/
|