0

「Sidebar」、「listenTestClass」という 2 つのモデル名を作成しました。モデルに属性を作成したのと同様にcolor1、モデルに属性Sidebarを作成しました。clistenTestClass

//listenTestClass model
var listenTestClass=Backbone.Model.extend(
                {
                    test:function(value){
                        this.set({c:value});
                    }                       
                }
            );
        var listenTestClassObject=new listenTestClass();
 //sidebar model
 var Sidebar = Backbone.Model.extend({
                promptColor:function() {
                    var cssColor = prompt("Please enter a CSS color:");
                    this.set({color1: cssColor});
                }
        });
var sidebar = new Sidebar();
 //if color1 attribte change,it triggers the following code
 sidebar.on("change:color1", function(model, color2) {
            $('#body1').css({background: color2})
        });
//assigning white color to my body tag.
sidebar.set({color1:'white'}); 
//assigning some random value to "c" attribute
listenTestClassObject.test("hi");

オブジェクトsidebarは属性「C」をリッスンします。つまり、属性「C」の値が変更されるたびに、の背景色を適用したいということですgreen。このためにlistenToイベントを使用しましたが、機能していません。

sidebar.listenTo(listenTestClassObject,"change:c",function(model,c1){sidebar.set({color1:'green'})});

誰でも私を助けることができます。

4

0 に答える 0