2016-05-27 2 views
0

кода внутри контроллера:Javascript функции самостоятельных ссылающаяся не работает в угловом ионной

(function(){ 
    $scope.show(); 
    profile.friend_requests_to_me_service(loggedInUser.id).then(function(data){ 
     console.log(data); 
     $scope.friend_requests_to_me = data.data.friend_request_to_me; 
     $scope.friends = data.data.people_you_may_know; 
     $scope.hide(); 
    }); 
})(); 

Как вы можете видеть эту функцию вызова профиля службы и метод этой проблемы является то, что service.The этого призыва функция не работает. Ошибка указана: TypeError: (intermediate value)(...) is not a function. В плунтерере я проверил тривиальную функцию самозапуска. Вот ссылка: http://jsfiddle.net/Lvc0u55v/4582/. Эта тривиальная функция self invoking работает. Но я не могу понять, почему моя фактическая функция самозапуска приложения не работает. Спасибо за ваше время.

Настоящая рабочая версия (не сам ссылающаяся) является: $scope.friendship_requests_to_me_function = function(){ $scope.show(); profile.friend_requests_to_me_service(loggedInUser.id).then(function(data){ console.log(data); $scope.friend_requests_to_me = data.data.friend_request_to_me; $scope.friends = data.data.people_you_may_know; $scope.hide(); });
} $scope.friendship_requests_to_me_function();

+0

С uglify? Попробуйте добавить «;» перед тем, как использовать функцию self. –

+0

@YinGang да это работает – Debojyoti

+0

Не понял, в чем проблема? Нет, где в документации дается этот синтаксис. @ YinGang, если вы можете дать мне ответ, я могу принять его – Debojyoti

ответ

1

Скорее всего, один из ваших Js заявлений не хватает «;» в конце.

Попробуйте добавить ';' перед вашей собственной функцией вызова.

Подробнее here

Мы в конечном итоге прохождения второй функции в качестве аргумента первой функции, а затем пытается назвать результат первого вызова функции как функции. Вторая функция завершится с ошибкой «... не является функцией» во время выполнения.

+0

Спасибо за ваше время – Debojyoti