Heim  >  Fragen und Antworten  >  Hauptteil

Problem beim Abrufen der DOM-Höhe in $nextTick – Stapelüberlauf

Um eine weitere Scrollfunktion zu erstellen, müssen Sie die Höhe des gescrollten Elements ermitteln
Der Code lautet wie folgt

    created() {
      this.titleid = this.$route.params.titleid
      this.communityid = this.$route.params.communityid
      this.TOPIC_LOADORDERBY({titleid: this.titleid, communityid: this.communityid})
       this.$nextTick(function () {
           // DOM 现在更新了
           // `this` 绑定到当前实例
           this._initScroll()
           let self = this;
               console.log(self.$refs.scorll.clientHeight)
               console.log(self.$refs)
               let height = self.$refs.scorll.clientHeight - self.$refs.topicReply.clientHeight;
                self.meunScroll.scrollTo(0, -height,0)

        })

Ich habe festgestellt, dass der erhaltene Wert nicht der tatsächliche Höhenwert war. Zuerst vermutete ich, dass die Daten nicht gerendert wurden, also überprüfte ich die Werte der Attribute im DOM und stellte fest, dass der Inhalt vorhanden war von clientHeight war genau so, wie ich es brauchte, aber ich weiß nicht, warum, wenn ich den clientHeight-Wert erhalte, es nicht das ist, was ich will, aber das Ergebnis ist immer noch das gleiche erhalten, wenn die Zeit 1000 ist;

phpcn_u1582phpcn_u15822684 Tage vor513

Antworte allen(1)Ich werde antworten

  • 给我你的怀抱

    给我你的怀抱2017-05-19 10:11:37

    在created的钩子函数中,模板还没渲染好,试试mounted

    Antwort
    0
  • StornierenAntwort