ExtJS Datefield TypeError j[d] 不是函数
ExtJS Datefield TypeError j[d] is not a function
我在 extjs 7.2 中有一个网格,其中有一个按日期过滤的商店。我有一个开始日期和一个结束日期,它们绑定到我的 ViewModel 中的日期对象。初始化网格时,第一个字段 (start_date) 的日期显示在该字段中,但随后程序从日期字段中抛出类型错误。
Uncaught TypeError: j[d] is not a function
ExtJS 86
getErrors
getErrors
validateValue
isValid
validate
onChange
onChange
checkChange
setValue
setValue
setValue
setValue
onBindNotify
notify
react
notify
notify
fireItemMutationEvent
clip
setViewSize
onViewResize
onViewRefresh
pass
createSingle
fire
doFireEvent
doFireEvent
doFireEvent
fireEventArgs
fireEvent
onBoxReady
afterFirstLayout
afterFirstLayout
afterComponentLayout
afterComponentLayout
notifyOwner
callLayout
flushLayouts
runComplete
k
callParent
runComplete
run
flushLayouts
resumeLayouts
resumeLayouts
setActiveTab
doActivateTab
onClick
fire
fire
publish
publishDelegatedDomEvent
doDelegatedEvent
onDelegatedEvent
addDelegatedListener
subscribe
addListener
addListener
doAddListener
doAddListener
addManagedListener
addManagedListener
a
onRender
onRender
finishRender
finishRenderItems
finishRender
finishRenderChildren
afterRender
finishRender
finishRenderItems
finishRender
finishRenderChildren
finishRenderChildren
afterRender
finishRender
finishRenderItems
finishRender
finishRenderChildren
afterRender
finishRender
render
constructor
ctor
<anonymous> My Project ext-all.js:20:1539234
ExtJS 55
onDelegatedEvent self-hosted:935
ExtJS 31
<anonymous> My Project
这是带有绑定的网格的 js class:
Ext.define(K.maintenance.classes.grid, {
extend: K.shared.classes.groupedGrid,
controller: K.maintenance.aliases.controller,
viewModel: K.maintenance.aliases.viewmodel,
requires: ['Ext.data.validator.Date'],
xtype: K.maintenance.xtypes.grid,
bind: '{store}',
tbar: {
xtype:'toolbar',
items: [
{
reference: 'print',
iconCls:'icons-print',
},
'->','Start date : ',
{
xtype: 'datefield',
reference: 'start_date',
vtype: 'daterange',
format: 'Y-m-d',
bind: {
value: '{startDate}',
maxDate: '{endDate}'
},
validators: 'date'
},'-','Stop date : ',
{
xtype: 'datefield',
reference: 'stop_date',
vtype: 'daterange',
format: 'Y-m-d',
bind: {
value: '{endDate}',
minDate: '{startDate}'
},
validators: 'date'
}
]
},
columns: {...}
viewConfig: {
forceFit:true,
scrollToTop: Ext.emptyFn,
scrollOffset: 19,
stripeRows: true
},
stateful: false,
stateId: 'tool_maintenance_status',
animCollapse: false,
});
如果您能帮助找出引发该错误的原因,我们将不胜感激。
尽管这种类型的错误看起来毫无用处,但它通常表示缺少 ExtJS 所期望的内容。
没有vtype: daterange
开箱即用。您有在某处实施的自定义吗?如果不是,那可能是罪魁祸首。
https://docs.sencha.com/extjs/7.2.0/classic/Ext.form.field.VTypes.html
另一种可能性是 validators: 'date'
配置没有达到您的预期。我一直为该配置使用一个函数 属性。日期字段已经内置了一些验证,因此如果不妨碍您,使用基本日期验证器可能是多余的。
我在 extjs 7.2 中有一个网格,其中有一个按日期过滤的商店。我有一个开始日期和一个结束日期,它们绑定到我的 ViewModel 中的日期对象。初始化网格时,第一个字段 (start_date) 的日期显示在该字段中,但随后程序从日期字段中抛出类型错误。
Uncaught TypeError: j[d] is not a function
ExtJS 86 getErrors getErrors validateValue isValid validate onChange onChange checkChange setValue setValue setValue setValue onBindNotify notify react notify notify fireItemMutationEvent clip setViewSize onViewResize onViewRefresh pass createSingle fire doFireEvent doFireEvent doFireEvent fireEventArgs fireEvent onBoxReady afterFirstLayout afterFirstLayout afterComponentLayout afterComponentLayout notifyOwner callLayout flushLayouts runComplete k callParent runComplete run flushLayouts resumeLayouts resumeLayouts setActiveTab doActivateTab onClick fire fire publish publishDelegatedDomEvent doDelegatedEvent onDelegatedEvent addDelegatedListener subscribe addListener addListener doAddListener doAddListener addManagedListener addManagedListener a onRender onRender finishRender finishRenderItems finishRender finishRenderChildren afterRender finishRender finishRenderItems finishRender finishRenderChildren finishRenderChildren afterRender finishRender finishRenderItems finishRender finishRenderChildren afterRender finishRender render constructor ctor <anonymous> My Project ext-all.js:20:1539234 ExtJS 55 onDelegatedEvent self-hosted:935 ExtJS 31 <anonymous> My Project
这是带有绑定的网格的 js class:
Ext.define(K.maintenance.classes.grid, {
extend: K.shared.classes.groupedGrid,
controller: K.maintenance.aliases.controller,
viewModel: K.maintenance.aliases.viewmodel,
requires: ['Ext.data.validator.Date'],
xtype: K.maintenance.xtypes.grid,
bind: '{store}',
tbar: {
xtype:'toolbar',
items: [
{
reference: 'print',
iconCls:'icons-print',
},
'->','Start date : ',
{
xtype: 'datefield',
reference: 'start_date',
vtype: 'daterange',
format: 'Y-m-d',
bind: {
value: '{startDate}',
maxDate: '{endDate}'
},
validators: 'date'
},'-','Stop date : ',
{
xtype: 'datefield',
reference: 'stop_date',
vtype: 'daterange',
format: 'Y-m-d',
bind: {
value: '{endDate}',
minDate: '{startDate}'
},
validators: 'date'
}
]
},
columns: {...}
viewConfig: {
forceFit:true,
scrollToTop: Ext.emptyFn,
scrollOffset: 19,
stripeRows: true
},
stateful: false,
stateId: 'tool_maintenance_status',
animCollapse: false,
});
如果您能帮助找出引发该错误的原因,我们将不胜感激。
尽管这种类型的错误看起来毫无用处,但它通常表示缺少 ExtJS 所期望的内容。
没有vtype: daterange
开箱即用。您有在某处实施的自定义吗?如果不是,那可能是罪魁祸首。
https://docs.sencha.com/extjs/7.2.0/classic/Ext.form.field.VTypes.html
另一种可能性是 validators: 'date'
配置没有达到您的预期。我一直为该配置使用一个函数 属性。日期字段已经内置了一些验证,因此如果不妨碍您,使用基本日期验证器可能是多余的。