yoqw/web/cms/app/components/status-cell.js
2020-07-01 15:22:07 +08:00

29 lines
878 B
JavaScript

import Component from '@ember/component';
import { alias } from '@ember/object/computed';
import { addObserver } from '@ember/object/observers';
export default Component.extend({
tagName: 'span',
classNames: ['label', 'label-sm'],
classNameBindings: ['enabled:label-success:label-warning'],
name: 'active',
field: alias('name'),
didReceiveAttrs() {
let me = this;
me._super(...arguments);
const field = me.getFieldPath();
me.set('enabled', me.get(field));
addObserver(me, field, function() {
me.set('enabled', me.get(field));
});
},
enabledText: '启用',
disabledText: '禁用',
'enabled-text': alias('enabledText'),
'disabled-text': alias('disabledText'),
getFieldPath() {
const me = this;
return 'model.' + (me.get('field') || 'enabled');
},
});