javascript - 使用 typescript 嵌套 Angular Directive(指令)

标签 javascript angularjs angularjs-directive typescript

是否可以使用带有嵌套 Angular Directive(指令)的 Typescript?

http://jsfiddle.net/mrajcok/StXFK/

<div ng-controller="MyCtrl">
  <div screen>
    <div component>
        <div widget>
            <button ng-click="widgetIt()">Woo Hoo</button>
        </div>
    </div>
</div>
</div>

下面的 Javascript 看起来像 typescript 代码怎么样?

var myApp = angular.module('myApp',[])

.directive('screen', function() {
    return {
        scope: true,
        controller: function() {
            this.doSomethingScreeny = function() {
                alert("screeny!");
            }
        }
    }
})

.directive('component', function() {
    return {
        scope: true,
        require: '^screen',
        controller: function($scope) {
            this.componentFunction = function() {
                $scope.screenCtrl.doSomethingScreeny();
            }
        },
        link: function(scope, element, attrs, screenCtrl) {
            scope.screenCtrl = screenCtrl
        }
    }
})

.directive('widget', function() {
    return {
        scope: true,
        require: "^component",
        link: function(scope, element, attrs, componentCtrl) {
            scope.widgetIt = function() {
                componentCtrl.componentFunction();
            };
        }
    }
})


//myApp.directive('myDirective', function() {});
//myApp.factory('myService', function() {});

function MyCtrl($scope) {
    $scope.name = 'Superhero';
}

最佳答案

该代码应该按原样工作。然而,作为更好的实践,如果 TypeScript 类变得太大,您可以使用 Controller http://www.youtube.com/watch?v=WdtVn_8K17E&hd=1

关于javascript - 使用 typescript 嵌套 Angular Directive(指令),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20500136/

相关文章:

javascript - Angularjs ng-repeat 和子元素

AngularJS 数字输入格式化 View

javascript - 使用 Kendo UI 上传控件将请求 header 添加到 XmlHttpRequest

javascript - AngularJS:ng-selected 不显示选定值

Javascript getElementByID().innerHTML() 不工作

javascript - 尝试使用 jQuery .post() 在表单 POST 后重定向用户

javascript - AngularJS - 单击按钮时切换对象值 bool 值

angularjs - 测试方法是否返回 Promise

javascript - 从 1.2.x 更新后,指令不从 Controller ($scope)链接

javascript - 将焦点设置在输入上的指令不起作用