私は答えを見たら馬鹿だと思うが、なぜor
が働いているのかという理由で私の頭を包み込むことはできないが、and
はこのComputedProperty
にない。チュートリアルではand
を使用する必要があると提案しましたが、これがうまくいかない場合はどうすればいいのか分かりません。Ember.ComputedPropertyに「または」動作していますが、「および」はありません。
私はEmberと親しみやすいが、実際にはjavascriptで快適ではないので、私はここで何が起こっているのか理解しづらいと思っています。
ボタンの前にtrue
の2つのプロパティが必要です。isDisabled
それぞれのプロパティをブール値の状態を逆転させる独自のプロパティに渡すので、元のプロパティが反転されるまで、isDisabled
はボタン上でアクティブのままです。
contact.js
emailAddress: '',
message: '',
//**original properties**
isValid: Ember.computed.match('emailAddress', /^[email protected]+\..+$/),//starts as false
validMessage: Ember.computed.gte('message.length', 5),//starts as false
//**my reversing boolean properties**
notYet: Ember.computed.not('isValid'),//starts as true
notNow: Ember.computed.not('validMessage'),//starts as true
//isDisabled must be true to be active disabling button
isDisabled: Ember.computed.or('notYet', 'notNow'),//starts as true
私は正しいEMAILADDRESS形式に置く場合:
emailAddress = true
notYet = false
isDisabled = true //still
んなぜ私は、5文字以上
validMessage = true
notNow = false
isDisabled = false //now
のvalidMessageを置く場合"または"これのために働く、なぜではない "と"ない "か?
お返事ありがとうございます。要するに、「私のコードが動作し、私のコードがなぜ機能するのかわかりません」ということです。 – Lenocam