</template>
<script>
-import { defineComponent, toRefs, reactive, inject } from 'vue'
+import { defineComponent, toRefs, reactive } from 'vue'
import { getData, delay } from '../api'
import { onBeforeRouteUpdate } from '../../src'
</template>
<script>
-import { defineComponent, getCurrentInstance, inject, ref } from 'vue'
-// import { guardSymbol } from '../../src/components/View'
+import { defineComponent, getCurrentInstance, ref } from 'vue'
export default defineComponent({
name: 'Home',
setup() {
const me = getCurrentInstance()
- // const registerGuard = inject(guardSymbol)
- // console.log('calling setup in Home')
- // await registerGuard(me)
- // emit('registerGuard', getCurrentInstance())
function log(value) {
console.log(value)
<script>
import { defineComponent, inject, provide } from 'vue'
-// import { guardSymbol } from '../../src/components/View'
export default defineComponent({
name: 'Nested',
setup() {
const level = inject('level', 1)
provide('level', level + 1)
- // const registerGuard = inject(guardSymbol)
- // await registerGuard()
- // console.log('done waiting')
return {
level,
<script>
import { defineComponent, inject, provide } from 'vue'
-// import { guardSymbol } from '../../src/components/View'
export default defineComponent({
props: ['id'],
setup(props) {
const level = inject('level', 1)
provide('level', level + 1)
- // const registerGuard = inject(guardSymbol)
- // await registerGuard()
- // console.log('done waiting')
return {
props,
</template>
<script>
-import { defineComponent, inject } from 'vue'
+import { defineComponent } from 'vue'
import { useRoute } from '../../src'
export default defineComponent({
</template>
<script>
-import { defineComponent, inject } from 'vue'
+import { defineComponent } from 'vue'
export default defineComponent({
name: 'User',