控制器作为语法不使用角度1.4.5 var vm =此模板未显示

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了控制器作为语法不使用角度1.4.5 var vm =此模板未显示相关的知识,希望对你有一定的参考价值。

我已经切换到控制器作为语法与角度1.5 -1.6项目等...我需要为角度1.4.5项目添加一些功能的特定项目。

通常我使用角度路由等..但是这个项目设置不同。

问题是在我的模板html中,我能够看到

$scope.blah   //  {{ blah}} 

但我不明白为什么或如何访问this

控制器:

icisNg.controller("hearingListing", ['$scope', '$rootScope',
    function ($scope, $rootScope) {

        $scope.blah = 333;
        var vm = this;
        vm.whatever = 'controller as';
        $scope.atEnd = "endsdfgsdfgsdfg";
        console.log('scope', $scope.atEnd);
        console.log('vm', vm.whatever);

    }

]);

Html模板:

<div fieldset-wrapper legend="Hearing" ng-controller="hearingListing">

    <div>test again</div>

    <div>{{blah}}</div>

    eewr
    <br />
    vm:{{vm.whatever}}
    <br />
    {{atEnd}}
</div>
答案

根据您的代码呈现方式,最方便的是......

更改

ng-controller="hearingListing"

ng-controller="hearingListing as vm"

===

此外,请记住,控制器中的变量vm不会在模板中引用相同的vm。它们是不同的,可以命名。

以上是关于控制器作为语法不使用角度1.4.5 var vm =此模板未显示的主要内容,如果未能解决你的问题,请参考以下文章

!!误解--var vm = new vue({}) 与 export default {} 是一回事儿??

角度 1.5。如何使嵌入的模板绑定到组件范围

有条件地使用 terraform 配置 gcp vm 实例

未捕获异常的角度中断/暂停

部署到 tomcat 9(Ubuntu 18.04)时,角度路由不起作用

作为角度 4 中的关键字?