代码跟视频一样的 获取不到this.score?

来源:2-12 星级评分(1)

LostInDark

2019-07-23 00:11:18

(function(){

var itemTmpl = '<div class="star-score">$starstr</div>';

function _getStars(){

console.log(this.score)   //打印undefined???????

var _score = this.score.toString();

console.log(_score)

var scroeArray = _score.split('.');

var fullstar = parseInt(scroeArray[0]);

var halfstar = parseInt(scroeArray[1]) >= 5 ? 1 : 0;

var nullstar =  5 - fullstar - halfstar;

var starstr = '';

for (var i = 0; i < fullstar; i++){

starstr += '</div class="star fullstar"></div>'

}

for (var i = 0; i < halfstar; i++){

starstr += '</div class="star halfstar"></div>'

}

for (var i = 0; i < nullstar; i++){

starstr += '</div class="star nullstar"></div>'

}

return itemTmpl.replace('$starstr', starstr);

}

window.StarScore = function(score){

this.score = score || '';

console.log(this.score)

this.getStars = _getStars;

}

})();



写回答

1回答

好帮手慕慕子

2019-07-23

同学你好, 老师将你的这部分代码放在源码测试, 可以获取到this.score。说明同学的这部分代码是书写没有问题的,示例:

http://img.mukewang.com/climg/5d36a2ed00017a1509160361.jpg

建议:同学可以查看一下contentList.js中如下图所示位置,是否传入正确的值,同学也可以打印一下查看这里的score是否有值哦

http://img.mukewang.com/climg/5d36a36a0001e08309320228.jpg

如果还有疑惑, 可以将你的contentList.js中的代码也粘贴过来, 便于老师高效的为你解决问题

如果帮助到了你, 欢迎采纳!

祝学习愉快~~~~

0

0 学习 · 6815 问题

查看课程