Ich möchte wangEdit für die Rich-Text-Bearbeitung des mittleren Formulars integrieren. Es ist geplant, es in ein unabhängiges Modul zu integrieren. Wenn das Ende die Komponente aufruft, fordert sie die von der Back-End-Schnittstelle bereitgestellten Daten an, um die gewünschte Seite zu rendern. Daher wird auf der Seite Folgendes geschrieben:
<template>
<p>
<p v-for="item in items">
<p v-if="item.type=='editor'">
<label>{{ item.title }}</label>
<p id="editor" style="height:400px;max-height:500px;">
{{ item.model }}
</p>
</p>
<p v-if="item.type=='input'">
<el-input v-model="item.model" placeholder="请输入内容"></el-input>
</p>
</p>
</p>
</template>
Dann habe ich in Vue's Mounted geschrieben:
mounted() {
axios.get('shop/pageData').then((res)=>{
this.items = res.data.data;
var editor = new wangEditor('editor');
editor.create();
});
}
Dann kann es nicht gerendert werden und es wird ein Fehler gemeldet
Uncaught (in Versprechen) TypeError: Eigenschaft „Menüs“ von undefiniert kann nicht gelesen werden
Ich habe noch nicht viel mit dem Front-End gemacht und möchte Sie fragen:
1. Wie kann Vue beim direkten Aufrufen von Komponenten auf der Seite json_encode($data) zusammenarbeiten? //Ich verwende PHP als Back-End
oder wenn die Komponente aufgerufen wird, fordern Sie Daten von Axios an
2 Zuerst dachte ich, dass das Problem durch das Rendern verursacht wurde, bevor die Daten angefordert wurden , also habe ich versucht, die Daten im Teil „created(){}“ anzufordern und den Wert „this.data“ zuzuweisen, und wenn Sie dann „mounted(){}“ aufrufen, stellen Sie fest, dass „this.data“ keinen Wert hat.
执行new wangEditor('editor')的时候id=editor这个节点是否存在?应该是这个的问题