Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/468.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在Vue.js中使用CKeditor实例_Javascript_Jquery_Ckeditor_Vue.js - Fatal编程技术网

Javascript 在Vue.js中使用CKeditor实例

Javascript 在Vue.js中使用CKeditor实例,javascript,jquery,ckeditor,vue.js,Javascript,Jquery,Ckeditor,Vue.js,我正在尝试在我的Laravel backoffice中实现CKeditor,它使用Vue.js构建视图 在这个表单中,我想用文本编辑器将“textarea”替换为name=“ckeditor1” <form method="POST" v-on="submit: onSubmitForm"> <div class="col-md-4"> <h1>Pagina: @{{ page.name }}</h1>

我正在尝试在我的Laravel backoffice中实现CKeditor,它使用Vue.js构建视图

在这个表单中,我想用文本编辑器将“textarea”替换为name=“ckeditor1”

    <form method="POST" v-on="submit: onSubmitForm">
    <div class="col-md-4">

        <h1>Pagina: @{{ page.name }}</h1>

        <h2>Pagina algemeen</h2>

        <div class="form-group">
            <label for="name">
                Name
                <span class="error" v-if="! page.name">*</span>
            </label>
            <input type="text" name="name" id="name" class="form-control" v-model="page.name">
        </div>

        <ul class="nav nav-tabs">
            <li class="" v-repeat="page.translations" v-class="active: language == defaultLanguage"><a
                        data-toggle="tab" href="#@{{ language  }}">@{{ language  }}</a></li>
        </ul>
        <div class="tab-content">
            <div v-repeat="page.translations" id="@{{ language  }}" class="tab-pane fade in "
                 v-class="active: language == defaultLanguage">
                <h2>Pagina inhoud</h2>

                <div class="form-group">
                    <label for="name">
                        Titel
                    </label>
                    <input type="text" name="title_@{{ language  }}" id="title_@{{ language  }}"
                           class="form-control" v-model="title">
                </div>
                <div class="form-group">
                    <label for="content">
                        Inhoud
                    </label>
                    <textarea name="ckeditor1" id="content_@{{ language  }}"
                              class="form-control editor" v-model="content"></textarea>
                </div>

                <h2>Seo</h2>

                <div class="form-group">
                    <label for="meta_keywords">
                        Meta keywords
                    </label>
                    <input type="text" name="meta_keywords_@{{ language  }}"
                           id="meta_keywords_@{{ language  }}" class="form-control"
                           v-model="meta_keywords">
                </div>
                <div class="form-group">
                    <label for="meta_decription">
                        Meta description
                    </label>
                    <textarea name="meta_description_@{{ language  }}"
                              id="meta_description_@{{ language  }}" class="form-control"
                              v-model="meta_description"></textarea>
                </div>
                <input type="hidden" name="page_id_@{{ language  }}" id="page_id_@{{ language  }}"
                       class="form-control" v-model="page_id" value="@{{ pageId }}">
            </div>
        </div>

        <div class="form-group" v-if="! submitted">
            <button type="submit" class="btn btn-default">
                Opslaan
            </button>
        </div>
    </div>
</form>
更新->已解决


通过添加Vue.nextTick,我可以初始化编辑器。我为每个textarea添加了一个类“editor”,我希望它成为一个编辑器,然后使用class=“editor”从textareas中查找所有id


通过添加Vue.nextTick,我可以初始化编辑器。我为每个textarea添加了一个类“editor”,我希望它成为一个编辑器,然后使用class=“editor”从textareas中查找所有id


通过添加Vue.nextTick,我可以初始化编辑器。我为每个textarea添加了一个类“editor”,我希望它成为一个编辑器,然后使用class=“editor”从textareas中查找所有id


我还将CKeditor与laravel vue一起使用。您只需要使用CKeditor设置和获取基本数据

这是我的main.html文件,我需要它来编辑

<div class="row">
    <div class="col-md-2">
         <label for="body" >Mail Body :</label>
    </div>

   <div class="col-md-10" >
       <textarea class="ckeditor" id="body" rows="5" cols="70" name="body" v-model="template.body" ></textarea>
   </div>
</div>
如果我没有弄错的话,ckeditor会用自定义模板替换原始文本区域。因此,您在ckeditor中看到的内容不会自动放入messageArea textarea。这就是为什么您看不到对模型的任何更改。
因此,要进行更改,您需要在提交到app.js文件之前替换更新的文本,如下所示

this.template.body = CKEDITOR.instances['body'].getData();

我还将CKeditor与laravel vue一起使用。您只需要使用CKeditor设置和获取基本数据

这是我的main.html文件,我需要它来编辑

<div class="row">
    <div class="col-md-2">
         <label for="body" >Mail Body :</label>
    </div>

   <div class="col-md-10" >
       <textarea class="ckeditor" id="body" rows="5" cols="70" name="body" v-model="template.body" ></textarea>
   </div>
</div>
如果我没有弄错的话,ckeditor会用自定义模板替换原始文本区域。因此,您在ckeditor中看到的内容不会自动放入messageArea textarea。这就是为什么您看不到对模型的任何更改。
因此,要进行更改,您需要在提交到app.js文件之前替换更新的文本,如下所示

this.template.body = CKEDITOR.instances['body'].getData();

到底出了什么问题?它不会启动编辑器吗?Javascript控制台中是否有错误?@DavidK.Hess我没有收到任何错误,并且编辑器在my位于节中时没有显示。只要我在那部分外面放一个,它就工作得很好。到底出了什么问题?它不会启动编辑器吗?Javascript控制台中是否有错误?@DavidK.Hess我没有收到任何错误,并且编辑器在my位于节中时没有显示。只要我在那部分外面放一个,它就会工作得很好。
var vm = this;
axios.post('/fetchEmailTemplate', {
                'template_id' : template_id
                }).then(function (response) {

                    vm.template = response.data.emailTemplate;

                CKEDITOR.instances['body'].setData(vm.template.body);

                }).catch(function (error) {
                    console.log(error);
                    setNotification(error, "danger");
                });
this.template.body = CKEDITOR.instances['body'].getData();