vue+elementUI项目获取数组最后一位,防止深拷贝问题
1、父组件
。。。
<div v-else-if="routerType == 'buttonAdd' || routerType == 'buttonEdit'"> <button-add :sortCodeBtn="sortCodeBtn" :menuItem="menuItem" :childrenItem="childrenItem" :content="content" @goBack="goBack"></button-add> </div> </template>
2、申明
<script>
import data from './new_file.js'
import add from './add_'
import buttonAdd from './button_add'
export default {
components: {
add,
buttonAdd
},
data () {
return {
sortCodeBtn: 0,
。。。。。
3、获取目标值
getButtonData (id) { let that = this that.table.loading = true this.$post('/resource/find_button_by_parentId', this.getDataform) .then(function (res) { that.table.loading = false if (res.code === 100) { let strList = JSON.stringify(res.data) const listPop = JSON.parse(strList).pop() //获取res.data数组的最后一位 that.sortCodeBtn = listPop.sortCode + 1 // 得到res.data数组最后一位的排序sortCode并加1
that.table.data = that.editDate(JSON.parse(strList))
that.table.total = res.total } }) .catch(function (error) { that.table.loading = false })
},
4、子组件使用
<script>
export default {
props: {
sortCodeBtn: { // 在 methods 方法中可以直接通过 this.sortCodeBtn 获取(父组件)传来的 sortCodeBtn 值
type: Number
},
content: {
type: String,
default () {
return '新增按钮列表'
}
}
}
},
created () {
this.$set(this.addFromData, 'sort', this.sortCodeBtn) // 可直接在钩子函数created中进行数据的传递
}