Skip welcome & menu and move to editor
Welcome to JS Bin
Load cached copy from
 
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <title>JS Bin</title>
</head>
<body>
<script src="https://unpkg.com/vue@2"></script>
<div id="app">
  <transition-group>
      <v-switch key="foo" v-foo :on="isOn"></v-switch>
  </transition-group>
  <p>
    <button @click="isOn = !isOn">
      Toggle
    </button>
  </p>
</div>
</body>
</html>
 
const Switch = {
  props: {
    on: Boolean
  },
  template: `
    <div v-if="on" key="on">On</div>
    <div v-else key="off">Off</div>`
}
new Vue({
  el: '#app',
  components: {
    'v-switch': Switch
  },
  directives: {
    foo: {
      bind (el) {
        console.log('bind', el.textContent)
      },
      inserted (el) {
        console.log('inserted')
      },
      componentUpdated (el) {
        console.log('updated', el.textContent)
      }
    }
  },
  data () {
    return {
      isOn: false
    }
  }
})
Output

This bin was created anonymously and its free preview time has expired (learn why). — Get a free unrestricted account

Dismiss x
public
Bin info
anonymouspro
0viewers