0

我用 yeoman 启动了一个应用程序,他使用“controllerAs”来启动 app.js..

我知道以这种方式我不使用$scope,但我必须使用来访问控制器的属性,但不知何故我无法想象这些变化......有人可以帮助我吗?

这是我所做的:

应用程序.js

            angular
              .module('viaggiApp', [
                'ngAnimate',
                'ngCookies',
                'ngResource',
                'ngRoute',
                'ngTouch',
                'ngMaps'
              ])
              .config(function ($routeProvider, $locationProvider) {
                $routeProvider
                  .when('/', {
                    templateUrl: 'views/main.html',
                    controller: 'MainCtrl',
                    controllerAs: 'main'    
                  })
                  .when('/about', {
                    templateUrl: 'views/about.html',
                    controller: 'AboutCtrl',
                    controllerAs: 'about'
                  })
                  .otherwise({
                    redirectTo: '/'
                  });
                   $locationProvider.hashPrefix('');      
              });

控制器(主)

 angular.module('viaggiApp').controller('MainCtrl', function ($q,GetPathGoogle,NgMap) {
this.propriety="say hi";
});

html

{{main.propriety}}

为什么 html 不能正确呈现适当的值,但它显示了括号?

4

2 回答 2

1

尝试这个

<html>
<head>
	<script Src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.6.1/angular.js"></script>

	<script>
		var app=angular.module("myapp", []);
		app.controller("namesctrl", function(){
            this.propriety="say hi";
		});
		
	</script>


</head>
<body ng-app="myapp" ng-controller="namesctrl as ctrl">
{{ctrl.propriety}}
</body>
</html>

于 2017-04-25T10:51:27.627 回答
0

这应该工作,

<div ng-controller="MainCtrl as main">
   <h1> {{main.propriety}} </h1>
</div>
于 2017-04-25T10:46:46.500 回答