在使用数据-table 列的计算函数内使用 Ember 控制器中的 Moment.js
Using Moment.js in Ember Controller inside a computed function using data-table columns
我想知道是否可以应用 MM-DD-YYYY
的日期格式
到 Ember 路由的控制器中 Data-Table 列数组的 valuePath
。
我的controller.js
:
columns: computed(function() {
return A([{
valuePath: 'firstName',
label: get(this, 'i18n').t('page.firstName'),
cellClassNames: 'cell-valign-middle',
sortable: true,
}, {
valuePath: "lastName",
label: get(this, 'i18n').t('page.lastName'),
cellClassNames: 'cell-valign-middle',
sortable: true,
}, {
valuePath: "dateOfBirth",
label: get(this, 'i18n').t('page.dateOfBirth'),
cellClassNames: 'cell-valign-middle',
sortable: false,
},
]);
}),
template.hbs
{{#data-table
columns=columns
models=model
sort=sort
isLoading=isLoadingModels
responsive=true}}
{{/data-table}}
我的目标是使用 moment.js
.
将 dateOfBirth
的 valuePath
转换为 MMDDYYYY
的日期格式
我试过moment("dateOfBirth").format("MMDDYYYY")
没有成功。
理想情况下,每个列的配置中会有一个'format'属性,这样你就可以定义一个格式化方法。
另一种方法是,由于 table 将查询模型的属性 'valuePath',您可以直接在模型中计算 return 格式化日期。
models/user.js
formatted: Ember.computed('dateOfBirth', function () {
const dateOfBirth = this.get('dateOfBirth');
return moment(dateOfBirth).format('MMDDYYYY')
})
p.d.: 我不确定您使用的 table 是哪个插件。如果你可以 post 在这里,我可以深入研究文档。
我想知道是否可以应用 MM-DD-YYYY
的日期格式
到 Ember 路由的控制器中 Data-Table 列数组的 valuePath
。
我的controller.js
:
columns: computed(function() {
return A([{
valuePath: 'firstName',
label: get(this, 'i18n').t('page.firstName'),
cellClassNames: 'cell-valign-middle',
sortable: true,
}, {
valuePath: "lastName",
label: get(this, 'i18n').t('page.lastName'),
cellClassNames: 'cell-valign-middle',
sortable: true,
}, {
valuePath: "dateOfBirth",
label: get(this, 'i18n').t('page.dateOfBirth'),
cellClassNames: 'cell-valign-middle',
sortable: false,
},
]);
}),
template.hbs
{{#data-table
columns=columns
models=model
sort=sort
isLoading=isLoadingModels
responsive=true}}
{{/data-table}}
我的目标是使用 moment.js
.
dateOfBirth
的 valuePath
转换为 MMDDYYYY
的日期格式
我试过moment("dateOfBirth").format("MMDDYYYY")
没有成功。
理想情况下,每个列的配置中会有一个'format'属性,这样你就可以定义一个格式化方法。
另一种方法是,由于 table 将查询模型的属性 'valuePath',您可以直接在模型中计算 return 格式化日期。
models/user.js
formatted: Ember.computed('dateOfBirth', function () {
const dateOfBirth = this.get('dateOfBirth');
return moment(dateOfBirth).format('MMDDYYYY')
})
p.d.: 我不确定您使用的 table 是哪个插件。如果你可以 post 在这里,我可以深入研究文档。