This repository has been archived on 2023-03-18. You can view files and clone it, but cannot push or open issues or pull requests.
osr-discourse-src/app/assets/javascripts/discourse/mixins/string-buffer.js.es6

32 lines
658 B
JavaScript

export default Ember.Mixin.create({
_watchProps: function() {
const args = this.get('rerenderTriggers');
if (!Ember.isNone(args)) {
args.forEach(k => this.addObserver(k, this.rerenderString));
}
}.on('init'),
render(buffer) {
this.renderString(buffer);
},
renderString(buffer){
const template = Discourse.__container__.lookup('template:' + this.rawTemplate);
if (template) {
buffer.push(template(this));
}
},
_rerenderString() {
const buffer = [];
this.renderString(buffer);
this.$().html(buffer.join(''));
},
rerenderString() {
Ember.run.once(this, '_rerenderString');
}
});