3

我正在尝试学习 angular 1.5 组件并偶然发现了一个问题。以下代码是我的组件的启动布局,它使用我的 gruntjob 编译没有错误。

angular.module('layout',[]).component('kiHeaderParallax',{
        controller: myController,
        controllerAs: 'comp',
        template:'<div>Yo</div>'
    });

    function myController(){
        this.$postLink(domManipulation);
        console.log('poop');
    }

    function domManipulation(){
        console.log('poop2');
    }


angular.element(document).ready(function() {
      angular.bootstrap(document, ['layout']);
    });

但是,当我进入浏览器时,我得到了这个 typeError:

> 1.angular-1.5.5.js:13550TypeError: this.$postLink is not a function
>     at new myController (ki-header-parallax.component.ts:14)
>     at Object.invoke (1.angular-1.5.5.js:4665)
>     at $controllerInit (1.angular-1.5.5.js:10115)
>     at nodeLinkFn (1.angular-1.5.5.js:9033)
>     at compositeLinkFn (1.angular-1.5.5.js:8397)
>     at compositeLinkFn (1.angular-1.5.5.js:8400)
>     at compositeLinkFn (1.angular-1.5.5.js:8400)
>     at publicLinkFn (1.angular-1.5.5.js:8277)
>     at hint.js:1480
>     at 1.angular-1.5.5.js:1751

我正在使用 Angular 1.5.5 - 所以这不应该是问题 - 任何想法为什么我无法通过我的日志?

代码笔: http ://codepen.io/anon/pen/JXQXgN?editors=1010

4

1 回答 1

2

解决方案

this.$postLink = domManipulation;

代替

this.$postLink(domManipulation);
于 2016-05-19T09:48:07.657 回答