Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.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 将主干模型属性绑定到TinyMCE文本_Javascript_Backbone.js_Tinymce_Backbone Model - Fatal编程技术网

Javascript 将主干模型属性绑定到TinyMCE文本

Javascript 将主干模型属性绑定到TinyMCE文本,javascript,backbone.js,tinymce,backbone-model,Javascript,Backbone.js,Tinymce,Backbone Model,我正在制作一个包含富文本的表单。我有TinyMCE,主干控制逻辑,下划线用于模板 我找不到是否有办法将主干模型绑定到TinyMCE值 比如: var backboneModel = new BackBobeModel(); tinymce.init({ selector:'#rich-text', 'data-object': backboneModel.richText }); 据我所知,TinyMCE不会自动与主干绑定。因此,我制作了一个简单的可重用TextArea组件

我正在制作一个包含富文本的表单。我有TinyMCE,主干控制逻辑,下划线用于模板

我找不到是否有办法将主干模型绑定到TinyMCE值

比如:

var backboneModel = new BackBobeModel();
tinymce.init({ 
    selector:'#rich-text',
    'data-object': backboneModel.richText
});

据我所知,TinyMCE不会自动与主干绑定。因此,我制作了一个简单的可重用
TextArea
组件

它是从一个主干视图创建的,该视图将自己的根
元素初始化为一个TinyMCE实例,并将自身绑定到它的
Change
事件中

TinyMCE主干组件 按原样使用 您可以在没有模型的情况下使用它,它将创建自己的模型来跟踪数据

var component = new TextArea({ content: "initial content" });
可以检索数据,甚至可以监听组件的模型

component.getValue();
// or use events:
Backbone.listenTo(component.model, 'change:value', function(model, value, options) {
    // use the new value
});
将其与自定义模型一起使用 假设您有一个具有任意属性的自定义模型

var car = new CarModel({ 
    make: "mazda", 
    description: "This is a car"
    // ...
});
只需将它传递给组件,定义它应该使用哪个属性来更新模型

var component = new TextArea({ 
    model: car, 
    // 
    attribute: 'description'
});
现在,只要用户在TinyMCE框中键入,相同的初始模型实例
description
属性就会自动更新

Backbone.listenTo(car , 'change:description', function(model, value, options) {
    console.log("Car description changed:", value);
});

谢谢这帮了大忙!不适合我这里@jcarlosweb你甚至没有使用我答案的内容。。。我真的帮不了什么忙。
Backbone.listenTo(car , 'change:description', function(model, value, options) {
    console.log("Car description changed:", value);
});