Coder Social home page Coder Social logo

insert or edit raw html code about vue-wysiwyg HOT 1 OPEN

fbatiga avatar fbatiga commented on June 11, 2024 2
insert or edit raw html code

from vue-wysiwyg.

Comments (1)

niharikasah avatar niharikasah commented on June 11, 2024

I tried this workaround and it seems to work.

<wysiwyg
  v-model="value"
  v-model="editorContent"
  :class="{
    'editr--toolbarless': !showToolbar,
    'editr--wraptoolbar': wrapToolbar,
  }"
  :placeholder="placeholder"
  @change="onUpdate"
/>

data() {
return {
content: this.value,
editorContent: '',
};
},
watch: {
value() {
// on value change, update the content
this.content = this.getDocumentFromHTMLString(this.value);
this.editorContent = this.content.body.innerHTML;
},
},
mounted() {
this.content = this.value;
// Parse initial content to a dom document
this.content = this.getDocumentFromHTMLString(this.value);
// Set initial editor's content to only it's body innet html
this.editorContent = this.content.body.innerHTML;

this.$nextTick(() => {
  if (this.type) {
    const element = this.$el.querySelector('.editr--content');
    element.dataset.type = this.type;
  }
});

},

methods: {
onUpdate(value) {
this.$emit('input', value);
onUpdate(newValue) {
// Update the reference body innerHTML
this.content.body.innerHTML = newValue;
// Emmit the entire HTML
this.$emit('input', this.content.documentElement.outerHTML);
},
getDocumentFromHTMLString(string) {
const parser = new DOMParser();
return parser.parseFromString(string, 'text/html');
},
},
};
</script>

from vue-wysiwyg.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.