当前位置: 首页 > news >正文

昆明专业网站建设模板百度指数app下载

昆明专业网站建设模板,百度指数app下载,网络广告推广策划,罗湖网站建设1、需求 使用Vue Element UI 实现在列表的操作栏新增一个复制按钮&#xff0c;复制当前行的数据可以打开新增弹窗后亦可以跳转到新增页面&#xff0c;本文实现为跳转到新增页面。 2、实现 1&#xff09;列表页 index.vue <el-table> <!-- 其他列 --> <el-t…

1、需求

使用Vue + Element UI 实现在列表的操作栏新增一个复制按钮,复制当前行的数据可以打开新增弹窗后亦可以跳转到新增页面,本文实现为跳转到新增页面。

2、实现

1)列表页 index.vue

<el-table>
<!-- 其他列 -->
<el-table-column label="操作" width="150"><template slot-scope="scope"><el-button icon="el-icon-copy-document" title="复制"  @click="toCopyNew(scope.row)"></el-button></template></el-table-column>
</el-table>

方法部分:用id来区分,正常新增id为0,复制id不为0

methods: {// 复制toCopyNew (item) {const { url } = this.$getKey('这是是业务权限值,不需要这里可以不写')this.$router.push(`/${url}-New/${item.Id}`)},
}

2)新增页 New.vue

data () {return {id: this.$route.params.id,dataList: [],form: {Name: '',BG: '',InfoJson: [],},rules: {Name: [{ required: true, message: '请输入名称', trigger: 'blur' },],BG: [{ required: true, message: '请选择所属组织', trigger: 'change' },],InfoJson: [{ required: true, message: '请选择集合', trigger: 'blur' },],},submitLoading: false,}},created () {if (this.id !== '0') {this._getDetail()}},methods: {async _getDetail () {try {// 获取详情接口const data = await GetInfo({Id: this.id * 1,})if (data) {this.form = datathis.form.id = ''this.form.Name = data.Namethis.form.BG= { Id: data.BG_Id, Name: data.BG_Name }this.form.InfoJson= JSON.parse(data.InfoJson)this.dataList = this.form.InfoJson}} catch (error) {}},}

3)问题

按上述代码操作后,点击列表操作栏的复制按钮会跳转到新增页面并且将当前行的数据复制到对应各个组件内,数据呈现和保存正常,但是发现了一个问题,数据无法修改,网上查阅资料应该异步获取详情信息且数据获取时打印输出下返回数据是否有问题等,具体分析如下

① 异步问题

确保数据的获取是异步完成的。如果你的数据是通过异步请求获取的,确保在数据返回之前不要执行任何赋值操作。你可以使用async/await或者.then()语法确保异步请求完成后再进行赋值。

② 数据是否正确

确保你查询到的数据是正确的。你可以在控制台打印查询到的数据,确保它包含你所需的信息。

③ Reactivity(响应性)

Vue.js中的响应性是通过数据属性的getter和setter来实现的。确保你正在使用Vue.js的响应性系统来更新数据。如果你是在异步操作中修改数据,确保在Vue.js的上下文中执行这些操作。

④ 组件是否正确渲染

确保组件已正确渲染,并且你正在尝试更改的数据在组件中可见。你可以在组件的模板中使用双花括号 {{ variable }} 来输出数据,以确保它们正在正确显示。

4)解决

经过排查,本文问题为周期和响应性问题,具体修改为调整周日created为mounted,调整数据返回的赋值方式改为响应式获取,思路和代码如下:

① 之前在 created 钩子中异步调用方法,可能会导致在数据获取之前组件渲染完成,这可能导致数据无法正确地绑定到组件。将数据获取移动到 mounted 钩子中,因为 mounted 钩子在组件已经挂载到 DOM 后触发,这时候可以确保组件已经渲染完成。
② Vue.js 需要对象是响应式的才能在数据更改时触发视图更新。确保你的 form 对象是在 data 中声明的,并且使用了 Vue.set 或 this.$set 来确保嵌套属性的响应性。
mounted () {if (this.id !== '0') {this._getDetail()}},methods: {async _getDetail () {try {// 获取详情接口const data = await GetInfo({Id: this.id * 1,})if (data) {this.form = datathis.form.id = ''// 使用 Vue.set 或 this.$set 来确保响应性this.$set(this.form, 'Name', data.RG_Name)this.$set(this.form, 'Sign', data.RG_Sign)this.$set(this.form, 'BG', { Id: data.BG_Id, Name: data.BG_Name })this.$set(this.form, 'Sign', data.RG_Sign)this.$set(this.form, 'RuleJson', JSON.parse(data.RuleJson))this.dataList = this.form.RuleJson}} catch (error) {}},}

5)其他方便排查的原因在此做个列举

① 确保数据绑定正确

在模板中使用双花括号 {{ variable }} 输出数据,确保数据正确地绑定到组件。例如,你可以在模板中添加一些输出语句:

<template><div>{{ form.Name }}{{ form.BG }}<!-- 其他组件的输出语句 --></div>
</template>

这将帮助你确定是否有数据正确地传递到了组件

② 检查数据类型和结构

确保 GetInfo 返回的数据与你在 New.vue 中的期望一致。可以在 mounted 钩子中使用 console.log(data) 来查看获取的数据结构。

async _getDetail () {try {const data = await GetInfo({Id: this.id * 1,})console.log(data); // 查看数据结构// ... 其他代码} catch (error) {}
}

③ 检查是否有报错信息

查看浏览器控制台是否有任何错误消息。可能有网络请求问题或其他导致数据无法正确加载的问题。

④ 确保组件的 form 数据对象是响应式的

Vue.js 需要对象是响应式的才能在数据更改时触发视图更新。确保你的 form 对象是在 data 中声明的,并且使用了 Vue.set 或 this.$set 来确保嵌套属性的响应性。如本文解决办法

若本文有帮助到阅读本文的同学,欢迎点赞、关注、收藏,互相学习交流。

http://www.hrbkazy.com/news/41176.html

相关文章:

  • 网站首页域名有后缀影响搜索吗网站seo平台
  • 网站开发入门需要学什么seo怎么做
  • java做网站的要求教育培训学校
  • 嘉兴哪家公司做网站比较好的p站关键词排名
  • 京东网站建设设计框架图seo网络推广企业
  • 中文网站开发语言北京百度seo工作室
  • php 开源的企业网站推广公司产品
  • 好的网站设计app推广项目
  • 学校门户网站建设方案优化大师有必要安装吗
  • 网站制作公司 重庆绍兴seo网站优化
  • 合肥市庐阳区住房和城乡建设局网站广告开户
  • 怎样更换网站cms百度指数有三个功能模块
  • wap网站html模板淘宝推广怎么推
  • 北京顺义建设委员会网站首页发稿网
  • 百度云建站网站建设产品推广文章
  • 东莞樟木头哪里有做网站的搜索引擎优化好做吗
  • 网站的图片怎么做显示和隐藏网站推广入口
  • wordpress 主题 更改郑州网站优化推广
  • 网站建设优化服务如何优化seo搜索
  • 500强企业排名一览表搜索引擎优化方法有哪几种
  • 松江做移动网站下载百度app免费下载安装
  • 微信如何做微商城网站建设广州今日刚刚发生的新闻
  • 做电脑系统哪个网站百度竞价培训班
  • centos怎么安装wordpressseo优化范畴
  • 柏乡企业做网站站长统计app进入网址新版小猪
  • 新会网站建设痘痘如何去除效果好
  • 长沙企业网站建设收费便民信息微信平台推广
  • 搭建wordpress深圳百度快照优化
  • wordpress 安装 权限项目优化seo
  • 鹰潭市城乡建设局老网站百度移动端关键词优化