如题,当我点击开单成功后,我该如何初始化这个组件?就是回到刚进来的状态?
这里东西比较多,我不想去找对应绑定值然后清空,一开始就想到这种方式来做 this.$router.push('/#'),
但是然并卵,没有用。
如题,当我点击开单成功后,我该如何初始化这个组件?就是回到刚进来的状态?
这里东西比较多,我不想去找对应绑定值然后清空,一开始就想到这种方式来做 this.$router.push('/#'),
但是然并卵,没有用。
好问题,百度后学习了。
https://www.zhihu.com/questio...
如果单纯的想重新初始化特定的组件,可以在父组件中用 v-if 进行控制。
<div>
<child-comp v-if="showChild"></child-comp>
</div>
// 在父组建中
refreshChild() {
this.showChild = false;
setTimeout(() => {
this.showChild = true;
}, 0);
}
你使用this.$router.go(0)不行吗?
我一般这么写
this.$message('开单成功!')
setTimeout(() => {
this.$router.go(0)
}, 500)
也可以使用
this.$nextTick( () => {
this.$router.go(0)
})
感觉用着很爽啊!
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
2 回答4.7k 阅读✓ 已解决
4 回答4.3k 阅读✓ 已解决
看你的UI,用的应该是element吧?element中对form表单有一个重置方法,就是清空数据和判断条件的。resetFields()方法可以了解一下。调用该方法后,会使表单恢复成初始值。
输入内容后:
点击重置后: