该值在哪里定义 - “(action (mut foo) true)”?
Where is this value defined - "(action (mut foo) true)"?
从表面上看,这是一个关于 ember-cp-validations 的问题,但实际上它是关于 action (mut foo)
构造的。我已阅读 release notes for when that was first introduced 但它没有解决我在这里提出的问题。
在 Ember.js 模板中,当使用 ember-cp-validations 时,您可以像这样执行验证并控制相关错误消息的显示。
当 focus-out
触发时 属性 showFirstNameError
被更新。 属性 随后用于控制错误消息的显示或其他方式。
这非常有效,并且与 ember-cp-validation demo 一致。
但是 属性 showFirstNameError
实际定义在哪里?我原以为它是 validations
属性 的一部分,或者以某种方式成为组件、控制器或路由的一部分,但我找不到。
谁能帮我解决这个问题?
我认为不需要在任何地方定义。在这种情况下,它可以只是 undefined
,因为它的唯一目的是作为一个标志值,所以我们不会显示错误 div。当组件被创建和呈现时,属性 是 undefined
并且它通过作为一个虚假值来达到它的目的。当 focus out 事件触发时,它会像你说的那样将 属性 设置为 true
,因此标志已被翻转。
如果您想表现得友善并明确表达,您可以将组件本身的值设置为 null
或 undefined
,这样这种情况就不会混淆下一个人:
import Component from '@ember/component';
export default Component.extend({
showFirstNameError: undefined,
});
从表面上看,这是一个关于 ember-cp-validations 的问题,但实际上它是关于 action (mut foo)
构造的。我已阅读 release notes for when that was first introduced 但它没有解决我在这里提出的问题。
在 Ember.js 模板中,当使用 ember-cp-validations 时,您可以像这样执行验证并控制相关错误消息的显示。
当 focus-out
触发时 属性 showFirstNameError
被更新。 属性 随后用于控制错误消息的显示或其他方式。
这非常有效,并且与 ember-cp-validation demo 一致。
但是 属性 showFirstNameError
实际定义在哪里?我原以为它是 validations
属性 的一部分,或者以某种方式成为组件、控制器或路由的一部分,但我找不到。
谁能帮我解决这个问题?
我认为不需要在任何地方定义。在这种情况下,它可以只是 undefined
,因为它的唯一目的是作为一个标志值,所以我们不会显示错误 div。当组件被创建和呈现时,属性 是 undefined
并且它通过作为一个虚假值来达到它的目的。当 focus out 事件触发时,它会像你说的那样将 属性 设置为 true
,因此标志已被翻转。
如果您想表现得友善并明确表达,您可以将组件本身的值设置为 null
或 undefined
,这样这种情况就不会混淆下一个人:
import Component from '@ember/component';
export default Component.extend({
showFirstNameError: undefined,
});