2016-04-26 97 views
-1
var test = $scope.newgoal.gTitle; 

console.log(test.length); 

即使做了测试代码尽可能短,这一个变量返回的错误......它返回错误TypeError: Cannot read property 'length' of undefined范围与长度

我试过,没有运气寻找各种解决方案。您可以在此处看到部分控制器代码:http://plnkr.co/edit/Yp9z4aeVV9JOiCZH12Na?p=info

请帮忙。谢谢。 :)

回答

0

您是否尝试过console.log(test)以查看实际变量是什么? 也许尝试测试['长度'],如果它是测试中的对象。

同样看着Plnkr它看起来并不像它正在初始化,所以你的变量测试可能是未定义的。

+0

呃...它说'var test' ... :) –

+0

是的,但是您的$ scope.newgoal.gTitle看起来并不像它实际上任何东西。你有没有尝试控制台测井测试?它给了你什么? – Olly

0

这意味着你的$ scope.newgoal.gTitle是未定义的。尝试使用console.log(例如$ scope.newgoal.gTitle)记录它。

+0

只有当我输入到$ scope.newgoal.gTitle负责的文本框时才会通过...是否有无法检查文本框是否为空? :) –

+0

如果($ scope.textBoxModel)可以测试框 – mfrachet

+0

的内容,但是如何将其设置为具体到newgoal.gTitle? –

2

请注意,错误说明属性,长度无法读取。看得更近,你会看到'length' of undefined无法读取 - “未定义的”

问题不在length,它与test。此错误消息说test未定义。

由于test简单指向$scope.newgoal.gTitle,这意味着$scope.newgoal.gTitle未定义。