欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 财经 > 产业 > 组件A底部栏(position: fixed )事件使用$emit更新内容失败bug解决

组件A底部栏(position: fixed )事件使用$emit更新内容失败bug解决

2024/12/3 21:27:42 来源:https://blog.csdn.net/qq_36687211/article/details/144142836  浏览:    关键词:组件A底部栏(position: fixed )事件使用$emit更新内容失败bug解决

今天遇到一个很离奇的bug,记录一下

问题:在组件内底部栏使用$emit触发按钮事件但打印出来的值是初始化的值,更新的值被重置导致更新失败
原因:组件内底部使用了 position: fixed; 固定, 导致组件内插槽 this 与 保存按钮的this 不一致
解决: 取消position: fixed; 改用 position: absolute;

组件 editDetail

<div class="container"><div >...<div class="footer"><el-button class="btn" size="mini" @click="submit">保存</el-button></div></div>
</div>
// 保存
submit() {this.$emit('submit')
},
.footer{// position: fixed;position: absolute;bottom: 0;min-height: 55px;background: #FFFFFF;z-index: 999;...
}

页面 edit.vue

<editDetail  @submit="handleSubmit"><template slot="scope"><el-form ref="form" :model="form" :rules="rules" :label-width="80px"><el-form-item label="xxx" prop="xxx">...</el-form-item>...</el-form>            </template>
</editDetail>
 handleSubmit() {console.log('form', this.form)}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com