gpt4 book ai didi

javascript - 可以将 "model"视为 EmberJS 中的特殊 Controller 属性吗

转载 作者:行者123 更新时间:2023-11-30 16:17:41 24 4
gpt4 key购买 nike

我有 3 个相关问题;

Q1:在 EmberJS 中,“模型”是否可以被视为特殊的 Controller 属性。

我是这么说的,因为考虑到一个 Controller (具有返回 firstName 和 lastName 属性的模型),我有一个属性“isVisible”

所以在模板中,我会说

{{#if isVisible}}
Hello {{model.firstName}}, {{model.lastName}}
{{/if}}

现在这里,“isVisible”是 Controller 属性并直接引用,而要显示 firstName/lastName,我们说 model.firstName & model.lastName

这使得“model”看起来像是在 Controller 上定义的某种特殊属性,有点类似于“isVisible”

Q2:此外,我假设模型的值将始终由相应路由的模型 Hook 返回。不确定是否还有许多其他方法?

Q3:“模型”也是 Ember 识别的特殊/保留关键字。我问这个,因为我观察到

self.controllerFor('someroute').get('model.someParam')

如果您能在 Ember 处理此“模型”关键字的位置指向 get/set 的 Ember 库代码,那就太好了。

最佳答案

A1: model属性不是 Controller 的特殊属性,它可能看起来很特殊,因为它是由 route 自动/(在幕后)设置的在 setupController()方法,您可以覆盖它并使用模型的其他属性名称代替

setupController(controller, model) {
controller.set('person', model);
}

在你的模板中:

{{#if isVisible}}
Hello {{person.firstName}}, {{person.lastName}}
{{/if}}

现在您已将模型设置为属性 person而不是 model在 Controller 中

A2:model在 Controller 中只是通过路由设置的属性,您可以在应用程序中的任何位置设置/更改它(尽管这将是不好的做法),将模型/数据设置到 Controller 的正确位置是 setupController() Hook 路线(如上所示)。

A3: model 不是保留关键字

关于javascript - 可以将 "model"视为 EmberJS 中的特殊 Controller 属性吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35242851/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com