本文目录一览:
- 1、好烦哦,eclipse导入Extjs后每次操作都要build workspace,怎么弄啊?
- 2、使用Extjs6.0开发应用。build生成的app.js过大有没有解决方案?
- 3、关于一个ExtJs框架应用上的一个小问题~O(∩_∩)O~
- 4、extjs怎么获取后台的数据或者是变量。。。求大神速回?
- 5、Extjs 中的ext-all.js 中报Microsoft JScript 编译错误: 缺少 '}',代码如下,请帮忙,我没找到那里错了。
- 6、如何在ExtJS 6中使用Fashion美化应用程序
好烦哦,eclipse导入Extjs后每次操作都要build workspace,怎么弄啊?
可以在window选项中选择Preference-startup and shutdown 将不必要的预编译去掉,eclipse就不会自动去编译一些插件了
使用Extjs6.0开发应用。build生成的app.js过大有没有解决方案?
e,这个问题,我来答最合适了,两个都用过。总体来说还是apicloud靠谱。ide开发工具hbuilder好一些,关键是hbuilder的核心技术不怎样;apicloud主要突出的就是开发出来的app性能好,最主要apicloud封装了很多原生效果模块,开发的时候直接调用就ok了,用起来比较省事儿,效果还堪比原生。apicloud还有一个优点就是跨平台呀,用javascript就能开发原生应用,一套代码,同时编译出两个原生app,那叫一个简单呀,节省效率!顺便说一句,不知道你用得上不,apicloud还有后端的api服务和数据存储服务,可以直接给app建数据库,前端、后端一起搞定!
关于一个ExtJs框架应用上的一个小问题~O(∩_∩)O~
我的印象中好像JS是分块编译的,只预编译方法类的代码。变量类的按顺序编译。
extjs怎么获取后台的数据或者是变量。。。求大神速回?
1. 使用form表单提交
使用表单提交是调用了表单的submit方法,其配置项包括url、method等。这种方式能够以JSON的形式提交参数信息。
var myform = Ext.create('Ext.form.Panel',{undefined
defaultType: 'textfield',
items:[{undefined
fieldLabel : 'Name',
name : 'name'
},{undefined
fieldLabel: 'Gender',
name : 'gender'
},{undefined
fieldLabel : 'Age',
name: 'age'
}],
buttons: [{undefined
text : 'load',
handler : function(){undefined
this.up('form').getForm().submit({undefined
url: '/request/userinfo',
method : 'POST',
success : function(form, action){undefined
console.log(form);
Ext.Msg.alert('title', 'load success');
});
}]);
2. 使用Ajax异步提交
将上述handler方法中的内容换成一下代码即可。在Ajax的request方法中是一个配置对象,其配置参数包括url,type,params。其中params表示要提交的参数,在此例中是从form表单中通过getValues()方法获得的。该种方式也能将参数一JSON的方式提交到后台,与一个对象匹配。
var values = this.up('form').getForm().getValues();
Ext.Ajax.request({undefined
url:'/request/userinfo',
headers : {undefined'userHeader': 'userMsg'},
type:'POST',
params:values,
success:function(response){undefined
var data = response.responseText;
console.log(data);
console.log("success");
},
});
3. 使用Ext.data.Store
在项目中经常需要通过提交一些数据来从后台获取相应的信息。例如,在表单中输入某个人的id和name就可以查出它的相关信息并在前台显示。一个关于extjs的例子如下:
//data Model
Ext.define('User',{undefined
extend: 'Ext.data.Model',
fields: [{name:'name',type:'string'},
{name:'gender',type:'string'},
{name:'age',type:'string'}
]
});
var userStore = Ext.create('Ext.data.Store',{undefined
model: 'User',
pageSize: 20,
// autoLoad : true,
proxy: {undefined
type : 'ajax', //提交数据的方式
url : '/request/userinfo',
reader : { //以json的形式读取将要提交的数据
type : 'json',
root : 'resultList'
},
writer : {undefined
type : 'json'
},
actionMethods : {undefined
create : 'POST'
}
},
});
//grid Panel
Ext.create('Ext.grid.Panel',{undefined
store: userStore,
columns: [
{header : 'Name', dataIndex : 'name'},
{header : 'Gender', dataIndex : 'gender'},
{header : 'Age', dataIndex : 'age'}
],
height: 200,
width: 400,
renderTo: 'div2'
});
//form Panel
var myform = Ext.create('Ext.form.Panel',{undefined
defaultType: 'textfield',
items:[{undefined
fieldLabel: 'Name',
name: 'name'
},{undefined
fieldLabel: 'Gender',
name: 'gender'
},{undefined
fieldLabel : 'Age',
name : 'age'
}],
buttons: [{undefined
text: 'load',
handler: function(){undefined
var values = this.up('form').getForm().getValues();
console.log(values);
userStore.proxy.extraParams=values;
userStore.loadPage(1);
}
}
});
在handler方法中获取form表单的参数后,赋值给userStore.proxy.extraParams,然后调用userStore.loadPage(1)。调用loadPage()方法时,会委托给proxy对象去后台获取数据。所以对proxy的配置是核心。使用这个方式从后台获取数据时,后台接口返回的对象应该包括一个List字段,list中包含所需要的具体信息。比如
@ReponseBody
public UserInfoResp getUserInfo(User user) {undefined
}
UserInfoResp应该像这样有一个List字段
class UserInfoResp {undefined
ListUser resulltList;
}
Extjs 中的ext-all.js 中报Microsoft JScript 编译错误: 缺少 '}',代码如下,请帮忙,我没找到那里错了。
我认为二楼的正解,如果是你写的js报错,他不会在ext-all.js里报错。应该是返回字符串错误Ext.util.JSON.decode不陈成功。一楼的看来程序的概念不熟练,双引号内的字符串只是一个值,不会涉及到任何语法问题的。无论里面有什么符号他也不会被编译执行的,也不会报错
如何在ExtJS 6中使用Fashion美化应用程序
在本文,重点是Sencha Fashion。这是什么?该如何使用它呢?在未来陆续的教程中,将为你展示如何去创建一个极好的暗黑主题。
编译主题
Ext JS应用程序的主题使用的是SASS,它是一种动态编写CSS代码的方法。例如,可以在样式表中使用变量和运算。浏览器并不了解SASS,它只知道CSS,隐藏,这些SASS主题需要被编译为浏览器能理解的,生产用的CSS代码。在Ext JS应用程序中可以通过在Sencha Cmd运行以下命令来编译主题:
view sourceprint?
1.sencha app build [development]
或
view sourceprint?
1.sencha app watch [toolkit]
两者的区别在于watch会通过轮询来了解更新,并理解进行编译,而build编译只能手动执行一次。
在旧版本的Ext JS或Sencha Touch,SASS样式是在Ruby中编译的。在Windows,需要使用管理员权限来安装Ruby。一旦安装完成,就可以开始编译主题了。不过,在有大量代码库和高级主题的时候,就要花费大量的编译时间。
为了编译高级主题,有时候需要花费一分钟。然后,你不得不刷新浏览器窗口来测试主题以确保已正确设置SASS变量。之后还要一次次的重复此过程。要知道,这个过程是相当耗时间的。这也是为什么对Fashion感到高兴的原因。
Sencha Fashion是使用javascript来编译主题的,可以说这是超级的快。当在左边的显示器修改一行代码后,就可以右边的显示器看到变化了,就是这么快。不再需要等等编译(在服务器开始),也不再需要刷新浏览器窗口。
由于Fashion使用的是javascript,因而有更多优点。例如,可以在Fashion之上进行扩展并创建自己的样式功能(类似SASS功能),还能调试样式表代码。
不过,最大的得益还是可以在开发机器上设计主题。要实现这个,只需要在命令行运行sencha app watch并在URL中添加以下参数:
view sourceprint?
platformTags=fashion:true