Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
174 views
in Technique[技术] by (71.8m points)

关于render函数的使用

methods: {
    forData(data) {
      data.forEach((item, index) => {
        if (item.length > 0) {
          this.html += "<div>";
          this.forData(item);
        } else {
          this.html += "<div @click='cesi1'>" + item.text;
        }
        this.html += "</div>";
      });
      this.$refs.wrapper.innerHTML = this.html;
    },
    cesi1() {
      console.log(123);
    }
  }

我得代码如上,通过递归输出结构,由于使用的是拼接字符串方式,所以导致代码中@click无法触发,咨询度娘说可以使用render函数解决,自己查了下文档但始终没有理解如何将render函数搭配进我上面的代码中,再次提问还望指点,谢谢!


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

这地方用不到render函数, 直接在template中使用v-for遍历data渲染你拼接的html就行了, 然后forData方法用来赋值data.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...