Jasmine TypeError:无法设置角度范围中未定义的属性
我正在angular 1.5版本中运行测试用例,但我得到了以下错误,即使我在postToRegisterController中有正确的逻辑,并且dealerNumber在应用程序中运行良好Jasmine TypeError:无法设置角度范围中未定义的属性,jasmine,angularjs-scope,angular-ui-bootstrap,testcase,angular1.6,Jasmine,Angularjs Scope,Angular Ui Bootstrap,Testcase,Angular1.6,我正在angular 1.5版本中运行测试用例,但我得到了以下错误,即使我在postToRegisterController中有正确的逻辑,并且dealerNumber在应用程序中运行良好 postToRegisterController scope.contract.dealNumber × set valid deal number TypeError: Cannot set property 'dealNumber' of undefined at <Jasm
postToRegisterController
scope.contract.dealNumber
× set valid deal number
TypeError: Cannot set property 'dealNumber' of undefined
at <Jasmine>
at UserContext.<anonymous> (src/assets/js/controllers/portal-integrated-apps/quikRegister/postToRegisterController.spec.js:46:43)
我错过什么了吗?任何意见都值得赞赏。请告诉我这里出了什么问题。查看您的代码,我找不到任何理由说明
范围。
合同确实不应该是未定义的。
因此,作为一种解决方法,您可以尝试
scope.contract = {
dealNumber = 1234
}
在
scope=\$rootScope\$new()中实例化了scope变量
但您从未给scope.contract
一个值,因此它是未定义的
由于scope.contract
未定义,因此如果尝试为scope.contract.dealNumber
赋值,则它将始终返回一个错误,说明您无法设置未定义的交易编号(在本例中为scope.contract
)
照办
scope = _$rootScope_.$new();
scope.contract={};
它应该会起作用
scope = _$rootScope_.$new();
scope.contract={};