Sencha Grid cell 편집 동적 처리

2024. 12. 18. 21:54Javascript/Sencha

Name 컬럼은 신규 Row인 경우만 편집이 가능함
defaultEditor가 null이기 때문에 설정을 해줘야 함
신규 Row는 record.phantom=true

columns: [
	{
		text: 'Name',
		dataIndex: 'name',
		flex: 1,
		getEditor: function (record, defaultEditor) {
			defaultEditor = {
				editor: {
					xtype: 'textfield',
					allowBlank: false
				},
			};

			// Allow editing only for new rows
			return record.phantom ? defaultEditor : null;
		}
	},
	{
		text: 'Age',
		dataIndex: 'age',
		flex: 1,
		editor: {
			xtype: 'numberfield',
			allowBlank: false,
			minValue: 0
		},
	}
],