代码跟视频一样的 获取不到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回答
同学你好, 老师将你的这部分代码放在源码测试, 可以获取到this.score。说明同学的这部分代码是书写没有问题的,示例:
建议:同学可以查看一下contentList.js中如下图所示位置,是否传入正确的值,同学也可以打印一下查看这里的score是否有值哦
如果还有疑惑, 可以将你的contentList.js中的代码也粘贴过来, 便于老师高效的为你解决问题
如果帮助到了你, 欢迎采纳!
祝学习愉快~~~~
相似问题