emberjs bindings и jwysiwyg
Я хотел бы использовать плагин jwysiwyg jQuery https://github.com/akzhan/jwysiwyg с Ember.TextArea http://emberjs.com/, но я не могу заставить работать привязки:(
Рассмотрим пример, приведенный ниже. Я использовал runloop thingy для вызова плагина.jwysiwyg jQuery после срабатывания привязок (поэтому он содержит правильные данные).
Я не уверен, как описать мою проблему, но в упрощенном виде я не могу заставить данные течь другим способом... т.е. когда я обновляю данные в текстовой области (теперь это html-редактор), модель не обновляется.
<script>
App = Ember.Application.create();
App.entry = Ember.Object.create({
sometext: "some demo text in here"
});
App.HTMLField = Ember.TextArea.extend({
valueBinding: "App.entry.sometext",
didInsertElement: function() {
this._super();
Ember.run.schedule('actions', this, function(){
this.$().wysiwyg();
});
}
});
</script>
<!-- place view in page -->
<script type="text/x-handlebars">
<p>
{{App.entry.sometext}}
</p>
<p>
{{view App.HTMLField}}
</p>
</script>
Кто-нибудь знает способ обойти проблему? .. предложения об обходном пути? .. какие-нибудь указатели? ... что-нибудь, что могло бы помочь?
1 ответ
Что-то вроде должно сделать это:
App.HTMLField = Ember.TextArea.extend({
didInsertElement: function() {
this._super();
var self = this;
Ember.run.schedule('actions', this, function(){
this.$().wysiwyg({
events: {
save: function( ) {
var c = this.getContent();
self.set('value', this.getContent() );
},
},
});
});
}
});