有没有更“节省方法”来计算该值?

时间:2019-01-09 20:47:35

标签: javascript ember.js

注意:在某些情况下,我被迫使用Ember 2.18,但如果2.x不能使用^ 3.4,我会很感兴趣。

我正在基于其他两个布尔值计算布尔值。在班级内部是这样:

userEmail: '',
feedbackText: '',
emailIsValid: match('useEmail', /^.+@.+\..+$/),
feedbackTextIsValid: gte('feedbackText.length', 5),
disableSubmit: computed('emailIsValid', 'feedbackTextIsValid', function() {
  return (!this.get('emailIsValid') || !this.get('feedbackTextIsValid'));
}),

换句话说,如果disableSubmit不是有效的电子邮件,或者userEmail少于5个字符,则属性feedbackText应该为true。它可以正确执行此操作。

我想知道的是,是否可以使用类似于notmatch的东西来返回true,如果另外两个值都不是true

1 个答案:

答案 0 :(得分:3)

选项1

由于Ember中立即可用的宏数量有限,因此您可以考虑使用ember-awesome-macros之类的东西(这是一个非常受欢迎的库,仅供参考)。

Error: Path /poc-deployment-automation conflicts with existing deployment path for revision 1 of the APIProxy poc-deploy-automation in organization nonprod, environment dev

选项2

您可以尝试同时使用'or'disableSubmit: nand('emailIsValid', 'feedbackTextIsValid'), // nand is the equivalent of an 'or' with inverted inputs 的混合物。

not