Vue.js - 保持活动组件 - 下一个滴答时出错 [英] Vue.js - Keep Alive Component - Error next Tick

查看:21
本文介绍了Vue.js - 保持活动组件 - 下一个滴答时出错的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

说明

我正在尝试利用 vue-js 2.3keep-alive 功能,所以我的 AJAX 调用只进行一次.

问题

我第二次尝试打开 popup 组件时出现此错误:

<块引用>

nextTick 中的错误:TypeError:无法读取未定义的属性插入""

类型错误:无法读取未定义的属性插入"

步骤

点击按钮显示弹出窗口

等一秒钟

关闭弹窗

再次点击按钮

https://jsfiddle.net/4fwphqhv/

最小复制示例

<button @click=showDialog = true">显示组件弹出窗口</button><保持活力><popup v-if="showDialog";:show-dialog.sync=showDialog"></popup></保持活动>

<模板id=弹出窗口"><el-dialog :visible.sync="show";@visible-change="updateShowDialog">{{asyncData}}</el-dialog></模板>Vue.component('弹出窗口', {模板:'#popup',道具:['showDialog'],数据(){返回 {显示:this.showDialog,asyncData:正在加载,请稍候";}},方法: {updateShowDialog(isVisible) {如果(isVisible)返回false;this.$emit('update:showDialog', false )}},创建:函数(){const _this = 这个setTimeout(() => _this.asyncData = '异步数据已加载', 1000)},});var vm = new Vue({el: '#app',数据: {显示对话框:假,},});

弹窗组件的真实代码