angularjs $ http在我的代码中不起作用请检查

时间:2017-11-04 06:29:12

标签: angularjs angularjs-directive angularjs-scope

我有以下代码我想要调用$ http但是它没有正常显示错误,当我删除$ http.get内容我的页面工作正常,如何为检索服务器端代码注入$ http内容

      (function ()
        {
            'use strict';

            angular
                .module('app.cnt')
                .controller('cntController', cntController);

            /** @ngInject */
            function cntController(Contacts, cntsService, $mdSidenav,$http, User, $location,$timeout, $document, $mdMedia)
            {

                var vm = this;
                vm.brandid = $cookies.get('brandid');
                vm.$http.get("http://localhost:3010/api/cnts/mobileuser/cntlist/"+ vm.brandid).then(res => {
                    vm.contacts = res.data;
                }).catch(err => {
                    console.log('asas');


                  }); 
        }
})();
  

消息:       解析时出错:" main \ cnt \ cnt.controller.js",第20行:意外的令牌=>

3 个答案:

答案 0 :(得分:1)

将$ inject = []添加为数组并传递相关服务。

就像那样:

cntController.$inject = ['Contacts',
'cntsService','$mdSidenav','$http', 'User', '$location','$timeout','$document', '$mdMedia'] ;

答案 1 :(得分:0)

你有没有尝试使用回归,因为这就是我的做法

function cntController(Contacts, cntsService, $mdSidenav, $http, User, $location, $timeout, $document, $mdMedia) {
var vm = this;
vm.brandid = $cookies.get('brandid');

function getContacts(){
    return $http.get("http://localhost:3010/api/cnts/mobileuser/cntlist/" + vm.brandid).then(res => {
            vm.contacts = res.data;
        }).catch(err => {
            console.log('asas');
        });
}}

我建议你创建一个服务来调用你的Http请求

答案 2 :(得分:-1)

这是一个语法错误。用括号括起函数args。

(res) => {...}
(err) => {...}