Skip to content

Instantly share code, notes, and snippets.

@okunokentaro
Last active August 29, 2015 14:20
Show Gist options
  • Save okunokentaro/ee944a3a6310783de944 to your computer and use it in GitHub Desktop.
Save okunokentaro/ee944a3a6310783de944 to your computer and use it in GitHub Desktop.
Toccataの今後の設計と採用APIについて

Toccata API採用方針

Annotations

Directive Class

https://angular.io/docs/js/latest/api/annotations/Directive-class.html 早期に採用。

各種property

selector

必須なため採用。

properties

1系DDO.scopeに該当。Pipeはv1モードでサポートするとなるとしんどそう。filterで代替実装できるかどうか? 後回し。

events

様子見。どういう使い方をするのか全貌が分かっていない。

@Component({
  events: ['statusChange']
})
class TaskComponent {
  statusChange:EventEmitter;
  constructor() {
    this.statusChange = new EventEmitter();
  }
  onComplete() {
    this.statusChange.next('completed');
  }
}

hostListeners

イベントを持たせる。実装できそうにも見えるけど、考慮点が多い。後回し。

hostProperties

1系だとng-modelでやってるやつ、ちょっと厳しそう。

@Directive({
  selector: 'input',
  hostProperties: {
    'value': 'value'
  }
})
class InputDirective {
  value:string;
}

lifecycle

v1モードでの実装は辛そう。

compileChildren

子もcompileするかどうか、v1モードでは実装不可能?

Component Class

https://angular.io/docs/js/latest/api/annotations/Component-class.html

基本は実装済み。

各種property

selector

実装済み。

injectables

従来のservice DI、なんとか採用したい。

changeDetection

何をするのか不明。様子見。

onDestroy variable

https://angular.io/docs/js/latest/api/annotations/onDestroy-var.html

つらそう。

onChange variable

https://angular.io/docs/js/latest/api/annotations/onChange-var.html

つらそう。

onAllChangesDone variable

https://angular.io/docs/js/latest/api/annotations/onAllChangesDone-var.html

用途もよくわからない。たぶんつらい。

Attribute Class

https://angular.io/docs/js/latest/api/annotations/Attribute-class.html

link関数で取得した値が使えたらいけそうなんだけど、難易度高いので後回し。

Query Class

https://angular.io/docs/js/latest/api/annotations/Query-class.html

用途不明。たぶんdocument.querySelector的なやつ。怖い。

View Class

https://angular.io/docs/js/latest/api/annotations/View-class.html

基本は実装済み。

各種property

templateUrl

実装済み。

template

実装済み。

directives

v1でやる必要なさそう(勝手にcompileされるから)

renderer

用途不明。

Parent class

https://angular.io/docs/js/latest/api/annotations/Parent-class.html

require実現のために必要。難易度高そう。

Ancestor class

https://angular.io/docs/js/latest/api/annotations/Ancestor-class.html

Parentより難易度高そう。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment