VueJS渲染不会被调用

时间:2017-05-01 09:14:10

标签: javascript vuejs2

在工作中,我们正在使用VueJS,我们希望使用2D数组中的内容渲染一个元素。这需要2个循环来迭代,这是模板无法实现的。我们发现我们可以使用render()函数执行此操作。

我们的代码(但简化了一点)是:

export default {
    name: 'od-table',
    data() {
        return {
            testData: []
        }
    },
    render() {
        console.log("render function")
    }
};

当我们在项目中包含此组件时,不会调用render函数。我可以看到组件已加载,因为我可以读取测试数据。没有日志或任何其他符号已调用render函数。

这可能是一个明显的错误,因为我们之前从未有过这个工作,但由于这是我们必须使用的问题,我们想知道代码有什么问题。

3 个答案:

答案 0 :(得分:0)

您使用render的任何特殊原因?您可能正在寻找mounted

以下是Vue.js 2.0的生命周期挂钩的完整列表。 https://vuejs.org/v2/api/#Options-Lifecycle-Hooks

答案 1 :(得分:0)

我仍然不知道出了什么问题,但删除组件并在新文件中复制旧代码似乎解决了这个问题。

答案 2 :(得分:0)

鉴于当您从头开始重新创建组件文件时它起作用了,问题可能出在原始文件中,您错误地留下了一个部分。那就是我发生的事情。如果您的组件带有自己的<template>,它将用于呈现,而您的render()函数将永远不会被调用。