读书人

Ext4 未找到Model.js,该怎么解决

发布时间: 2013-01-01 14:04:18 作者: rapoo

Ext4 未找到Model.js


<script language="javascript" type="text/javascript" src="@Url.Content("~/Scripts/ext-all.js")"></script>
<link type="text/css" rel="Stylesheet" href="@Url.Content("~/Content/ext-all.css")" />
<script type="text/javascript">
Ext.Loader.setConfig({ enabled: true });
Ext.require([
'Ext.grid.*',
'Ext.data.*',
'Ext.util.*',
'Ext.state.*',
'Ext.form.Panel'
]);
Ext.onReady(function () {
var isAdd = true; //默认是添加
Ext.define('NewContent', {
extend: 'Ext.data.Mode',
fields:
[
'NewsCategoryID',
'PublicDate',
'NewsMainTitle',
'NewsSubTitle',
'NewsSummary',
'NewsListImage',
'NewsContent',
'IsFocusNews',
'FocusNewsImage',
'IsAllowComment',
'IsPublicToMobileClient',
'NewsStatus',
'CreateDatetime'
]
});

var NewContentStore = Ext.create('Ext.data.Store', {
model: 'NewContent',
proxy: {


type: 'ajax',
url: '@Url.Action("GetNewsContentList", "NewsContent")',
reader: {
type: 'json',
root: "rows"
}
},
autoLoad: true
});


var grid = Ext.create('Ext.grid.Panel', {
store: NewContentStore,
id: 'grid',
layout: 'fit',
columns: [
{ header: 'ID', dataIndex: 'NewsCategoryID' },
{ header: 'PublicDate', dataIndex: 'PublicDate', align: 'center' },
{ header: 'NewsMainTitle', dataIndex: 'NewsMainTitle' },
{ header: 'NewsSubTitle', dataIndex: 'NewsSubTitle', align: 'center' },
{ header: 'NewsSummary', dataIndex: 'NewsSummary' },
{ header: 'NewsListImage', dataIndex: 'NewsListImage', align: 'center' },
{ header: 'NewsContent', dataIndex: 'NewsContent' },


{ header: 'IsFocusNews', dataIndex: 'IsFocusNews', align: 'center' },
{ header: 'FocusNewsImage', dataIndex: 'FocusNewsImage' },
{ header: 'IsAllowComment', dataIndex: 'IsAllowComment', align: 'center' },
{ header: 'IsPublicToMobileClient', dataIndex: 'IsPublicToMobileClient' },
{ header: 'NewsStatus', dataIndex: 'NewsStatus', align: 'center' },
{ header: 'CreateDatetime', dataIndex: 'CreateDatetime', align: 'center' }
],
selModel: new Ext.create('Ext.selection.CheckboxModel'),
viewConfig: { forceFit: true },
tbar: [
{
text: 'new',
handler: function () {
isAdd = true;
winForm.show();
}

}


, {
text: 'Delete',
handler: function () {

}
}, {
text: 'Update',
handler: function () {

}
}
]

});



var NewsCateTabWin = Ext.widget('form', {
items: [grid],
renderTo: Ext.getBody()

});
});
</script>


报错:Uncaught Error: Ext.Loader is not enabled, so dependencies cannot be resolved dynamically. Missing required class: Ext.data.Mode

当我把这句 Ext.Loader.setConfig({ enabled: true }); 加上
报Failed to load resource: the server responded with a status of 404 (Not Found) http://localhost:2134/data/Mode.js?_dc=1351584112203和Uncaught TypeError: Object #<Object> has no method 'read'

不知是不是缺少 Ext.Loader.setPath('Ext.ux', '@Url.Content("~/Scripts/Ext/ux")'); 这样的设置,如果是的话,@Url.Content("~/Scripts/Ext/ux")这个目录里面应该放那些文件


[解决办法]
Ext.data下面没有Mode,是Model。。。

            Ext.define('NewContent', {
//extend: 'Ext.data.Mode',
extend: 'Ext.data.Model',
fields:
[
'NewsCategoryID',
'PublicDate',
'NewsMainTitle',
'NewsSubTitle',
'NewsSummary',
'NewsListImage',
'NewsContent',
'IsFocusNews',
'FocusNewsImage',
'IsAllowComment',
'IsPublicToMobileClient',
'NewsStatus',
'CreateDatetime'
]
});

[解决办法]
ux文件夹一般放的是自定义的插件,如果Ext.require需要到ux文件夹下的控件,需要设置ux路径
        Ext.Loader.setConfig({
enabled: true
});
Ext.Loader.setPath('Ext.ux', '../ux');

读书人网 >Ajax

热点推荐