Angularjs 如何访问controllerAs中的控制器变量?

Angularjs 如何访问controllerAs中的控制器变量?,angularjs,angularjs-controlleras,Angularjs,Angularjs Controlleras,我与yeoman启动了一个应用程序,yeoman使用“controllerAs”启动app.js 我知道,通过这种方式,我不使用$scope,但我必须使用this访问控制器属性,但不知何故,我无法将更改可视化。。。有人能帮我吗 以下是我所做的: app.js angular .module('viaggiApp', [ 'ngAnimate', 'ngCookies',

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

我知道,通过这种方式,我不使用$scope,但我必须使用this访问控制器属性,但不知何故,我无法将更改可视化。。。有人能帮我吗

以下是我所做的:

app.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('');      
              });
控制器(主)

html

{{main.propriety}}
为什么html不能正确呈现property值,但却显示了括号?

这应该可以

<div ng-controller="MainCtrl as main">
   <h1> {{main.propriety}} </h1>
</div>

{{main.property}}
试试这个


var-app=angular.module(“myapp”,[]);
app.controller(“namesctrl”,function()){
这个。property=“打招呼”;
});
{{ctrl.property}

我已经使用yeoman启动了应用程序,(无法复制您的结构)现在我所做的更改是在main.html中链接控制器,如下所示:{{main.property}}但是仍然没有做任何事情:{{{main.property}但是什么也没有做。。我想知道这是否是一个约曼人的问题。。。
<div ng-controller="MainCtrl as main">
   <h1> {{main.propriety}} </h1>
</div>