Controller: ctrlfmt Poorly formed controller string. '' Must match `__name__ as __id__` or` __name__`

In rootes.js

.state('main.mydata', {
    url: '/my-data',
    templateUrl: '/app/views/pages/my-data.html',
    controller: 'mydataCtrl'
})

Controller

.controller('mydataCtrl', ['$scope', '$state', '$http', function($scope, $state, $http) {
    console.log("Came to My Data")
}])

when I cause a page retrieval error in the console

Error: angular.js?bundleVirtualPath=~%2fbundles%2fangular:13708 [$controller:ctrlfmt] Badly formed controller string ''. Must match `__name__ as __id__` or `__name__`.
http://errors.angularjs.org/1.5.7/$controller/ctrlfmt?p0=
    at http://localhost:25282/Scripts/angular.js?bundleVirtualPath=%7eNaNbundles%fangular:68:12
    at $controller (http://localhost:25282/Scripts/angular.js?bundleVirtualPath=%7e%fbundles%fangular:10199:17)
    at setupControllers (http://localhost:25282/Scripts/angular.js?bundleVirtualPath=%7e%fbundles%fangular:9331:34)
    at nodeLinkFn (http://localhost:25282/Scripts/angular.js?bundleVirtualPath=%7e%fbundles%fangular:9116:32)
    at compositeLinkFn (http://localhost:25282/Scripts/angular.js?bundleVirtualPath=%7e%fbundles%fangular:8510:13)
    at nodeLinkFn (http://localhost:25282/Scripts/angular.js?bundleVirtualPath=%7e%fbundles%fangular:9210:24)
    at compositeLinkFn (http://localhost:25282/Scripts/angular.js?bundleVirtualPath=%7e%fbundles%fangular:8510:13)
    at compositeLinkFn (http://localhost:25282/Scripts/angular.js?bundleVirtualPath=%7e%fbundles%fangular:8513:13)
    at compositeLinkFn (http://localhost:25282/Scripts/angular.js?bundleVirtualPath=%7e%fbundles%fangular:8513:13)
    at publicLinkFn (http://localhost:25282/Scripts/angular.js?bundleVirtualPath=%7e%fbundles%fangular:8390:30)

What could be the problem?

+4
source share
2 answers

On the page

my-data.html

There was a div with an empty controller name

<div ng-controller="">
  ..
</div>

because of this, he showed

Poorly shaped controller

+3
source

I ran into the same problem when calling $ mdDialog using angular material. My problem was that the line referring to my controller took place for the rogue at the end. Double-check that the string value of your controller key in the .state function object has no spaces.

, - .

+2

Source: https://habr.com/ru/post/1655435/


All Articles