我在Extjs4 librairie上遇到了一些问题.我想使用treeEditor组件.
Firebug错误:
错误:未捕获的异常:未启用Ext.Loader,因此无法动态解析依赖项.缺少必需的类:Ext.tree.TreeNode
我的代码:
Ext.require([
'Ext.form.*',
'Ext.grid.*',
'Ext.tree.*',
'Ext.data.*',
'Ext.util.*',
'Ext.loader.*',
'Ext.state.*',
'Ext.layout.container.Column',
'Ext.tab.TabPanel'
]);
Ext.onReady(function(){
// shorthand
Ext.QuickTips.init();
var tree = Ext.create('Ext.tree.TreePanel', {
animate:false,
enableDD:false,
// loader: new Tree.TreeLoader(), // Note: no dataurl, register a TreeLoader to make use of createNode()
lines: true,
rootVisible:false,
// selModel: new Ext.tree.MultiSelectionModel(),
containerScroll: false
});
// set the root node
var root = Ext.create('Ext.tree.TreeNode',{
text: 'Autos',
draggable:false,
id:'source'
});
tree.on('contextmenu',showCtx);
tree.on('click',function(node,e){node.select();return false;});
// json data describing the tree
var json = [ …Run Code Online (Sandbox Code Playgroud) 我使用tree.Panel和TreeStore组件.我使用JSON文件存储我的数据,但我想知道,如何使用TreeStore升级我的数据?
我解释了我的问题:我的页面上有2个组件:
Tree.Panel用TreeStore和Panel显示数据来编辑数据,因为我没有找到如何直接编辑树?
我想使用提交按钮更新我的树上的数据,但我不明白该怎么做?!
如果它是可能的 ?!
我不明白我如何添加新节点,升级节点和删除节点?
或者可能存在TreeEditor组件?!
非常感谢帮助:)
当我点击树面板中的节点时,我想添加允许空白的配置!如果node是一个叶子,我想把name字段的配置:allowBlank:false,如果不是叶子,则makeBlank:true.我找不到这样做的方法?!
非常感谢 :)
感谢您的回答,但我的组合框不是全局变量:
var monPrepanel = Ext.create('Ext.form.Panel',{
frame : true,
title : 'Editing Zone',
//renderTo : 'mesfields',
//width : 750,
forceFit : true,
items: [{
xtype:'fieldset',
title: 'Add Task : ',
margin : '20 20 20 20',
collapsible: true,
defaultType: 'textfield',
defaults: {anchor: '100%'},
layout: 'anchor',
items: [ {
itemId : 'p0',
allowBlank : false,
xtype : 'textfield',
anchor : '60%',
padding : '0 30 0 30',
fieldLabel : 'Task',
name : 'task'
} , {
itemId : 'p1', …Run Code Online (Sandbox Code Playgroud) 我用TreeStore&TreePanel.我需要在我的Tree中插入新节点,怎么做?
我有TreeStore跟随配置的组件:
var monPrestore = Ext.create('Ext.data.TreeStore', {
folderSort : true,
model : 'Task',
proxy : {
model : 'Task',
appendId: true,
type : 'ajax',
url : '/intranet-timesheet2-tasks-extjs/getJSON.tcl',
reader : {
type : 'json'
},
writer : {
type : 'json'
},
}
Run Code Online (Sandbox Code Playgroud)
我已经使用空白值定义了任务模型(我想插入的内容):
Ext.define('Task', {
extend : 'Ext.data.Model',
fields : [
{
name : 'task',
type: 'string'
},
{
name : 'material',
type: 'string'
},
{
name : 'cc',
type: 'string'
},
{
name …Run Code Online (Sandbox Code Playgroud) 我如何使用Ext.tree.ViewDDPlugin的事件?
我有一个使用DDPplugin的TreePanel,但我想知道如何监听drop事件.
这就是我的代码:
var monPretree = Ext.create('Ext.tree.Panel',{
id : 'treepanel',
title : 'TITRE',
//width : 800,
//height : 600,
width : 500,
enableDD: true,
useArrows : true,
viewConfig : {
plugins : {
ptype: 'treeviewdragdrop',
appendOnly: true,
listeners: {
drop: function (node, data, overModel, dropPosition) {
alert('CHANGE');
},
notifyDrop: function (dragSource, event, data) {
var nodeId = data.node.id;
alert(nodeId);
},
notifyOver: function (dragSource, event, data) {
alert('over');
}
}
}
},
singleExpand : false,
store : monPrestore,
rootVisible : false, …Run Code Online (Sandbox Code Playgroud) 我想在我的树中插入一个新节点.我使用Sencha库版本4开发.TreeNode似乎不起作用... Firebug错误:
Erreur:未捕获的异常:未启用Ext.Loader,因此无法动态解析依赖项.缺少必需的类:Ext.tree.TreeNode
我添加了Loader config enable:true.它也不起作用......!
我的代码:
/*Ext.Loader.setConfig({
enabled: true
});
*/
Ext.require([
'Ext.form.*',
'Ext.grid.*',
'Ext.tree.*',
'Ext.data.*',
'Ext.util.*',
'Ext.loader.*',
'Ext.state.*',
'Ext.layout.container.Column',
'Ext.tab.TabPanel'
]);
Ext.onReady(function(){
Ext.QuickTips.init();
Ext.define('Task', {
extend : 'Ext.data.Model',
fields : [
{ name : 'id', type :'int'},
{ name : 'task', type : 'string' },
{ name : 'material', type : 'string'},
{name : 'cc' , type : 'string'},
{ name : 'date_debut', type : 'string'}
]
});
var store = Ext.create('Ext.data.TreeStore',{
model : 'Task',
proxy : { …Run Code Online (Sandbox Code Playgroud)