账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    Vue子组件api获取数据加载不进来?
    36
    0

    项目结构就是原始的vue-cli 构建的demo, 目的就是想测试下vue + element-ui的组件式开发, 想用在后台开发中。

    期望:

    父组件加载各个子组件(独立模块)并显示, 每个子组件中自行调用api, 获取数据并渲染View, 然后能在父组件中呈现。

    问题:

    问题简化为为啥我在created中调用initApiData() 更新了数据, 表格数据依旧不变化呢?

    <template>
        <el-container>
            <el-main>
                <el-table :data="tableData">
                    <el-table-column prop="date" label="日期" width="140">
                    </el-table-column>
                    <el-table-column prop="name" label="姓名" width="120">
                    </el-table-column>
                    <el-table-column prop="address" label="地址">
                    </el-table-column>
                </el-table>
            </el-main>
        </el-container>
    </template>
    
    <script>
    //import Users from '@/components/user/Users'
    
    export default {
        name: 'Home',
      data () {
        const item = {
          date: '2016-05-02',
          name: '王小虎',
          address: '上海市普陀区金沙江路 1518 弄'
        }
        return {
          tableData: Array(20).fill(item),
          tableData2: Array(1).fill(item)
        }
      },
        methods: {
            initApiData: function () {
                let that = this
                console.log('change data...')
                that.tableDate = that.tableData2
                console.log(that.tableData2)
            }
        },
        created: function () {
            console.log('created...')
            this.initApiData()
        }
    }
    </script>
    
    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 时光划破青春 普通会员 1楼

      在Vue中,子组件获取数据加载不进来可能是由于以下原因:

      1. 子组件的props接收的数据可能与父组件传递的数据不一致。
      2. 子组件的data可能没有正确初始化,导致数据无法被获取。
      3. 子组件的生命周期方法可能没有正确触发,导致数据无法被获取。

      为了解决这个问题,你可以尝试以下步骤:

      1. 在父组件中,正确地传递数据给子组件,并确保数据类型一致。
      2. 在子组件的data中,确保初始化数据并正确触发生命周期方法。
      3. 在子组件中,检查获取数据的方法是否正确,例如,使用axios、fetch等库来获取数据。

      如果以上步骤都无法解决问题,可能需要检查你的代码,找出数据获取不进来的原因。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部