我在堆栈中发现了类似的问题,但它们并没有帮助我解决这个问题。我是Angular JS的新手。 (我在客户端调用了http post方法。)有一个文本框,当用户在框中添加单词并单击“提交”按钮时,我将该数据发送到我的API
我的控制器
'use strict'
export default function ($route,$rootScope,$location,$mdToast, $http , API_URL) {
this.submitAddress = function (movieName) {
$http.post(`${MY_URL}/movies`,movieName)
.then(() => {
$mdToast.show(
$mdToast.simple()
.textContent('Success!')
.hideDelay(3000)
)
}) }}
从视图
<md-input-container>
<label>Name</label>
<input type="text" name="movieName" ng-model="mgMovies.model.movieName"/ >
</div> -->
</md-input-container>
按钮
<md-button class="md-raised md-primary" ng-click="$myController.submitAddress(mgMovies.model.movieName)">
来自我的API网址。有一个get和post方法,我的帖子方法在这里
addresses.post = function (
request /* : Object */,
response /* : Object */
) /* : Promise<Object> */ {
if (!request.body) {
throw boom.badRequest('No request.url.params provided', 'params')
}
if (!request.body.movieName) {
throw boom.badRequest('Movie name param not provided', 'params')
}
return libAddr.saveNewMovie(request.body.movieName)
.then(() => {
return response.setStatusCode(200)
})
}
错误显示为
angular.js:14794 TypeError: Cannot read property 'url' of undefined
at responseError (http-errors-interceptor.js:20)
at processQueue (angular.js:17145)
at angular.js:17193
at Scope.$digest (angular.js:18331)
at Scope.$apply (angular.js:18628)
at HTMLButtonElement.<anonymous> (angular.js:27456)
at defaultHandlerWrapper (angular.js:3785)
at HTMLButtonElement.eventHandler (angular.js:3773) "Possibly unhandled rejection: {}"
答案 0 :(得分:0)
显示错误的完整堆栈跟踪...“尝试读取未定义的属性”意味着这发生在某个地方var someObj = undefined;
以及someObj.url
正在访问的其他地方.url
属性和someObj
未定义。 someObj
的实际名称将是其他内容,并且undefined
可能不是那么清楚,但是它在堆栈跟踪和对象之前指向的行上有.url
.url
为undefined
。