我有一个angularjs代码,其中在监视程序中为变量dataKey
提供了一个值。当我在控制台中记录该值时,将显示该值(例如,示例4),但是在以下语句中,它给出了错误:ReferenceError: datakey is not defined
。那怎么可能?
这是代码片段。
myApp.directive('circlepackingChart', function($window) {
return {
restrict: 'EA',
link: function(scope, elem, attrs) {
var dataFile = scope.dataFile;
var dataKey = attrs.expKey|| false;
var d3 = $window.d3;
var div = elem[0];
var width = div.offsetWidth;
var height = width / 2;
scope.$watch(function() {
return attrs.expKey;
}, function(value) {
dataKey = value || false;
console.log(datakey);
if (datakey) {
drawCirclePacking();
}
});
drawCirclePacking = function(){
/*some code*/
}
}
}
});
最佳答案
JavaScript是区分大小写的语言。这意味着语言关键字,变量,函数名称和任何其他标识符必须始终以一致的大写字母键入。
未定义datakey,因为您定义了dataKey