私はMootoolsフレームワークから始めています。私はコードを再利用可能にしたいので、私はクラスでそれをやろうとしています。mootoolsのカスタムメソッド内のOptionsコンストラクタで定義されたプロパティの使用
以下に示すコードでは、SVG用のRaphaelフレームワークを使用してマップを描画することを意図しています。コードは正常に動作していますが、Options
オブジェクト内にあるプロパティに問題があります。
var Map = new Class({
Implements : [ Options ],
pathsArr: {},
Options: {
canvas: {
container: 'map',
cheight: 500,
cwidth: 900,
},
attributes: {
fill: '#006699',
stroke: '#3899E6',
'stroke-width': 1,
'stroke-linejoin': 'round'
}
},
initialize: function (pathsArr, options){
this.setOptions(Options);
this.pathsArr = paths;
console.log(this.pathsArr);
},
setCanvas: function(){
console.log(this.Options.canvas);
R = Raphael(this.Options.canvas.container, this.Options.canvas.cwidth, this.Options.canvas.cheight);
return R;
},
drawPaths: function(){
console.log(this.Options.attributes);
for (var country in this.pathsArr){
var shape = R.path(this.pathsArr[country].path);
var attri = this.Options.attributes;
console.log(attri);
}
}
});
私はconsole.log
を使っていますが、ここで何が起こっているのかを理解しています。私はラインの属性を確認したときに、私はpathsArr
ウィッヒは外でチェックインしたときと
console.log(this.Options.attributes);
は私が
は私が起こった何のようなものが必要だと思うGoogle Chromeのコンソールでこれを取得しますOptions
オブジェクトです。
、どこで、私は、プロパティ何も起こらない属性が必要です。これらの2つの行のように。
私がこれを行うと、正しい結果が得られません。
console.log(this.Options.attributes.fill);
まあ、これはこれで、私はこれにこだわっていると私はなぜこれが起こっている誰かが私に説明することができます願っています。ありがとうございました!!
うわー、それは完全な答えでした!文法訂正+問題への答え。どうもありがとうございます!私は英語とJavaScriptのプログラミングを同時に学んでいます! – limoragni