Ember 模板助手 get-value-with-key

Posted

技术标签:

【中文标题】Ember 模板助手 get-value-with-key【英文标题】:Ember template helper get-value-with-key 【发布时间】:2016-06-09 19:11:01 【问题描述】:

Ember 是否有任何模板助手“get-value-with-key” 我找到了下面的用法,但不确定它到底是做什么的?

get-value-with-key item optionValuePath

【问题讨论】:

EmberJS - access properties of an object by arbitrary key in a template and have those properties bound using htmlBars?的可能重复 【参考方案1】:

有一个用于 HTMLBars 的 Ember Get Helper。 如果您使用的是 ember ,则可能需要安装包“ember-get-helper”。

get object key

【讨论】:

为什么我的回答错了? (我的回答是对的……) > 你必须安装包“ember-get-helper”。不,他没有,get 是所有 ember 应用程序中都可用的助手(取决于版本)【参考方案2】:

假设您有以下对象:

var obj = 
  "key1": 
    "subkey1": "hello world"
  

使用 Ember 3.18,从模板访问“hello world”,您可以:

get obj 'key1.subkey1'

【讨论】:

【参考方案3】:

您可以使用内置的 get 助手。在此处查看文档:Ember Docs。

使用示例:

get object key

请注意,get 助手将无法处理所有 javascript 键。例如,带有“.”的键不适用于内置的 get 助手。

例如,如果您有一个有效的 JavaScript 对象,例如:

const example = 
    'example.pdf': 'pdf_url'


// You can access this key normally via
example['example.pdf']

但是,这在 get helper 中不起作用

get this.example 'example.pdf'

一种解决方案是创建一个可以支持您需要支持的键类型的助手。例如,我制作了一个可以处理带有“。”的键的助手。通过包括“。”在用 '' 转义的键名中。

get this.example 'example\.pdf'

余烬旋转可以在这里找到:twiddle

其他有用的资源:

Dot notation for object keys with dots in the name How do I reference a field name that contains a dot in mustache template?

【讨论】:

以上是关于Ember 模板助手 get-value-with-key的主要内容,如果未能解决你的问题,请参考以下文章

使用 Ember.js 复选框输入助手触发更改事件的操作?

如何更新 Ember 模板中辅助主体内的变量

each 中的 link-to 未删除 ember 中的旧模板

在“andThen”中嵌套 ember 验收测试助手

ember 验收测试等待助手

在 Ember.js 中结合 linkTo 和 action 助手