2016-06-07 51 views
0

我正在嘗試編寫自定義類型以創建級聯下拉列表。 我從定義一個新的自定義類型擴展引用類型開始。 問題是無論我在類體內寫什麼,組件都不會顯示出來,並且沒有錯誤。 這是新的領域類:在ng-admin中創建CustomType會自動失敗

import ReferenceField from "admin-config/lib/Field/ReferenceField"; 

class CascadeParentField extends ReferenceField { 
constructor(name) { 
     super(name); 
     this._type = 'cascade_parent'; 
     this._cascadeReference = null; 
    } 
} 
export default CascadeParentField; 

和成對的FieldView類:

export default { 
    getReadWidget: () => '<ma-reference-column field="::field" value="::value" datastore="::datastore"></ma-reference-column>', 
    getLinkWidget: () => '<ma-reference-link-column entry="::entry" field="::field" value="::value" datastore="::datastore"></ma-reference-link-column>', 
    getFilterWidget:() => '<ma-reference-field field="::field" value="value" datastore="::datastore"></ma-reference-field>', 
    getWriteWidget: () => '<ma-reference-field field="::field" value="value" datastore="::datastore"></ma-reference-field>' 
}; 

雖然在main.js:

myApp.config(['NgAdminConfigurationProvider', 'FieldViewConfigurationProvider', function(nga, fvp) { 
    nga.registerFieldType('cascade_parent', require('./types/CascadeParentField')); 
    fvp.registerFieldView('cascade_parent', require('./types/CascadeParentFieldView')); 
}]); 

任何想法?我試圖調試,但沒有發現任何問題......

回答

0

的nga.registerFieldType使用要求可能會產生一個異常「CascadeParentField」不是一個構造函數,所以你應該做的,而不是進口:

import CascadeParentField from './types/CascadeParentField.js'; 
... 
myApp.config(['NgAdminConfigurationProvider', 'FieldViewConfigurationProvider', function (nga, fvp) { 
nga.registerFieldType('cascade_parent', AmountType); 
... 
} 

除此之外,我的猜測是,文件正在打破,因爲這是不是說有,但我發現它在另一個SO後:

ng-admin does not recognize custom field view

順便說一句我有同樣的問題(不能夠o做一個自定義的字段視圖)。