0
我正試圖用Javascript原型對象包裝頭部,並且可能由於我對傳統類的理解而遇到了塊。在原型構造函數中創建對象引用
我的代碼如下所示:
$(document).ready(function() {
var instance = new cards();
$dom = instance.buildItem(5);
}
var cards = function() {
//constructor
this.chromaObj = chroma.scale(["lightblue", "navy"]).domain([2, 6]);
}
cards.prototype.buildItem = function (val) {
var scale = this.chromaObj;
var $item = $("<span>" + val + "</span>").addClass("label-default").addClass("label").css({
"background-color": scale(val)
});
return $item;
}
每次規模是所謂的buildItem功能,我在,這種規模是不是一個函數,但是如果我創建了規模實例的控制檯收到錯誤在buildItem函數內部,它按預期工作。
有人可以請指出我在正確的方向,爲什麼我無法在構造函數中定義時訪問函數引用?
因爲比例不是函數。改變'this.chromaObj = chroma.scale([「lightblue」,「navy」])。domain([2,6]);'到'this.chromaObj = chroma.scale'這意味着你正在分配函數引用。 – vinayakj
檢查'chroma.scale([「lightblue」,「navy」])。域([2,6])是否返回函數 –
Chroma使用方法鏈模式,所以我調用的所有函數都應該返回一個新實例和對'this.chromaObj(val)'的調用應調用色度構造函數。我想將具體的scale([「lightblue」,「navy」])。domain([2,6])實例賦值給chromaObj。 – phosplait