2017-10-31 17 views
4

Angular JSコンポーネントで継承を達成するにはどうすればよいですか?私のサンプルは:Angular JS 1.Xコンポーネント継承

app.component('ResourceForm', controller: [ 
    function() { 
    this.save =() => { 
     $http(this.path, this.attributes()); 
    }; 
    }, 
]); 

app.component('PersonForm', { 
    bindings: { 
    person: '<person', 
    }, 
    controller: [ 
    function() { 
     this.path = '/person/' + this.person.id; 
     this.attributes =() => { name: this.name }; 
    }, 
    ], 
}); 

<!-- templates/person_form.html --> 
<form> 
    <input type="text" ng-model="$ctrl.name" > 
    <submit ng-click="$ctrl.save()"></submit> 
</form> 

答えて

0

私の知る限り、実際の継承はありません。 configsで遊んで、何らかの継承を得ることができます:

var cfg = { 
    bindings: { 
    person: '<person', 
    age: '@', 
    onNameChange: '@' 
    } 
} 

var component1 = angular.copy(cfg); 
component1.controller = ctrl1; 
app.component('component1', component1); 

var component2 = angular.copy(cfg); 
component2.controller = ctrl1; 
app.component('component2', component2); 
関連する問題