2015/10/28 13:14:15
Волею судеб придется поковырять angular+js после react+typescript.

Как-то так. Angular:
(function () {
    angular
    .module('app.widgets')
    .directive('iconButton', iconButton);

    function iconButton() {
        return {
            restrict: 'E',
            templateUrl: 'app/widgets/buttons/icon-button.html',
            scope: {
                click: '&',
                icon: '@'
            },
            replace: true
        };
    }
})();

<button class="bo-icon-button fa fa-{{icon}}" ng-click="click()"/>


React+Typescript:
export function iconButton(icon: string, onClick: () => void) {
  return dom.div({ className: $"bo-icon-button fa fa-{icon}", onClick });
}

Особенно мне нравится часть про "click: '&', icon: '@'".

Ангуляр дизайнили какие-то шизофреники - плотность ебанутых eDSL, замаскированных хаков и неочевидного на квадратный сантиметр зашкаливает.
26 посетителей, 13 комментариев, 51 ссылка, за 24 часа