Angular1 to Angular2 : controllerAs real

First step of the transformation of angular1 controller to angular2 componant

by manland

HTML

<script src="https://code.angularjs.org/1.4.7/angular.min.js"></script>
<div class="app" ng-app="app">
    <conf-dashboard></conf-dashboard>
</div>

CSS

body {
    background-color: #444;
    color: #fff;
}

a {
    color: inherit;
    text-decoration: none;
}

.confs {
    padding: 0;
}

.conf {
    list-style: none;
    border: 1px solid #222;
    padding: 10px;
    color: #fff;
    height: 50px;
}

.conf-img {
    height: 50px;
    max-width: 120px;
    margin-right: 15px;
    vertical-align: middle;
}

.conf-url {
    vertical-align: middle;
}

.conf-input {
    width: 100px;
}

JavaScript

var data = [
    {name: 'jug-montpellier', url: 'http://jug-montpellier.org/', date: 'tous les 3eme mercredi', icon: 'http://www.jug-montpellier.org/public/images/logo.png'},
    {name: 'devoxx', url: 'http://www.devoxx.fr/', date: '20 Avril 2016', icon: 'https://pbs.twimg.com/profile_images/587897238568968192/NMdj4LCC.png'},
    {name: 'KiwiParty', url: 'http://kiwiparty.fr/', date: 'Juin 2016', icon: 'http://kiwiparty.fr/xmedia/kiwiparty/2015/logo-kiwiparty.svg'},
    {name: 'mix-IT', url: 'http://www.mix-it.fr/', date: 'Avril 2016', icon: 'http://www.mix-it.fr/public/images/mini-mixit.png'}
];

var app = angular.module('app', []);

app.directive('confDashboard', [
	'LittleSrv',
    function (LittleSrv) {
        return {
            restrict: 'E',
            template: '<count-directive confs="ctrl.confs"></count-directive>'+
            	'<little-directive confs="ctrl.confs" on-add-conf="ctrl.addConf(newConf)"></little-directive>',
            scope: true,
            bindToController: {},
            controllerAs: 'ctrl',
            controller: [function() {
                this.confs = LittleSrv.getConfs();
                this.addConf = function(newConf) {
                    LittleSrv.addConf(newConf);
                };
            }]
        };
    }
]);

app.directive('littleDirective', [
    function () {
        return {
            restrict: 'E',
            template: '<ul class="confs">'+
            	'<li class="conf" ng-repeat="conf in myCtrl.confs">'+
                '<img class="conf-img" ng-src="{{conf.icon}}" />'+
                '<a class="conf-url" href="{{conf.url}}" target="_blank">{{conf.name}} le {{conf.date}}</a>'+
            	'</li>'+
            	'<li class="conf">'+
                '<input class="conf-input" type="text" ng-model="myCtrl.newConf.icon" placeholder="src image" />'+
                '<input class="conf-input" type="text" ng-model="myCtrl.newConf.name" placeholder="titre" />'+
                '<input class="conf-input"...