vue2-ace-editor
A packaging of ace
Demo here: https://github.com/chairuosen/vue-ace-editor-demo/tree/vue2
IMPORTANT
emmet support for html is removed after 0.0.6. because its code cannot works with strict mode.
if you want to use it. require emmet by your own.
npm install emmet@git+https://github.com/cloud9ide/emmet-core.git#41973fcc70392864c7a469cf5dcd875b88b93d4a
require(['emmet/emmet'],function (data) { // this is huge. so require it async is better
window.emmet = data.emmet;
});
How to use
Install
npm install --save-dev vue2-ace-editorRequire it in
componentsof Vue options{ data, methods, ... components: { editor: require('vue2-ace-editor'), }, }Require the editor's mode/theme module in custom methods
{ data, methods: { editorInit: function () { require('brace/ext/language_tools') //language extension prerequsite... require('brace/mode/html') require('brace/mode/javascript') //language require('brace/mode/less') require('brace/theme/chrome') require('brace/snippets/javascript') //snippet } }, }Use the component in template
<editor v-model="content" @init="editorInit" lang="html" theme="chrome" width="500" height="100"></editor>prop
v-modelis requiredprop
langandthemeis same as ace-editor's docprop
heightandwidthcould be one of these:200,200px,50%Access the ACE's instance
<editor ref='myEditor'>let editor = this.$refs.myEditor.editoror
editorInit: function (editor) { }