在Ext JS构造函数中把项目推到数组上会导致多个项目的出现
我有一个我定义的EXT JS类.在此类的constructor中,我将文本字段推到我的项目数组上,然后添加到测试字符串中.在类定义中,数组和字符串都被声明为空.但是,如果您尝试创建多个类实例,您会发现项目数组在每个实例上共享,但是字符串不是. . 这似乎很奇怪,因为我希望该类的定义被用作一种模板,因此每个新类都将从划痕开始.看来这是不正确的,所以我收集的这与原语与对象有关,但是我不确定为什么. EXT JS这样做的技术解释是什么?构造函数中的this不是参考该特定实例,而不是实际的类定义? 我不是在问如何解决问题...我知道该怎么做(initcomponent/constructor内部的声明数组和对象).我问这背后的技术解释是什么.从我收集的内容来看,这不是ES6类的行为方式,所以我假设这是由于Ext JS类系统的设计. 这是一个Ext.application({ name : 'Fiddle', launch : function() { Ext.define('My
2 2023-05-09
编程技术问答社区
ExtJS 6在商店同步的回调中访问messageProperty
同步EXTJS网格后,我想从UI中的服务器中显示一条消息.这是如何进行的摘录: this.store.sync({ callback: function (records, operation, success) { // messageProperty accessing code }, success: function (batch, options) { // messageProperty accessing code }, failure: function (batch, options) { } }); 这是商店的定义: proxy: { headers: { 'Accept': 'application/json' }, limitParam: undefined, pageParam:
4 2023-04-20
编程技术问答社区
试图将一个商店绑定到一个ViewModel上
我习惯于具有MVC模式的ExtJ,并且我正在尝试实现MVVM模式.我无法将商店绑定到我的视图中. 我有一个主网格,然后在选择行时尝试打开细节网格. detailsView = mainPanel.add({ xtype: 'rma-details', viewModel: {data: {id: id}} }) Ext.define('Mb.view.rma.Details', { extend: 'Ext.grid.Panel', alias: 'widget.rma-details', requires: [ 'Mb.view.rma.DetailsController', 'Mb.view.rma.DetailsModel' ], controller: 'rma-details', viewModel: {type: 'rma-details'}, bind: {
2 2023-04-07
编程技术问答社区
为什么ViewModel中声明的商店不能被加载?
这个问题与试图将商店绑定到ViewModel ,但是另一个问题. 我在这样的ViewModel中宣布一家商店: Ext.define('Mb.view.rma.DetailsModel', { extend: 'Ext.app.ViewModel', alias: 'viewmodel.rma-details', requires: ['Mb.model.rma.Detail'], data: { id: 0 }, stores:{ details: { //store: 'rma.Details', type: 'rmaDetails', // correction as suggested by @scebotari filters: [{ property: 'rma',
2 2023-04-07
编程技术问答社区
ExtJs 6 Modern toolkit 多选字段
我已经将项目从Sencha Touch升级到Extjs Universal App,大多数都是Workng,但没有多选择字段.它在Sencha Touch中工作正常,但在Extjs 6 Modern Toolkit中不起作用 Ext.define('Ext.ux.field.Multiselect', { extend: 'Ext.field.Select', alias : 'widget.multiselectfield', config: { delimiter: ',', mode: 'MULTI', doneButton: true }, /** * Updates the {@link #doneButton} configuration. Will change it into a button when appropriate, or just update the text if needed. * @param {Object}
8 2023-04-05
编程技术问答社区
ExtJS 6-pivot没有CMD
我想使用没有CMD的简单测试HTML评估枢轴网格的功能. 我已经阅读了这些链接中的信息,但我仍然无法安装工作环境 https://docs.sencha.com/extjs.com/extjs/6.0/co .. .ivot_grid.html https://www.sencha.com/forum/showthr..ut..out -sencha-cmd http://se.sencha.com/setup-guide/ 我已经下载了核心框架('ext-6.0.1-trial.zip') SENCHA网站 和Pivot Addon('Ext-Addons-6.0.1-trial.zip') 并在我的测试网络服务器上解开包装: www.mydummy.server.org/lib/extjs/ext-6.0.0/ 并测试了它在KitchenSink中调用枢轴的示例: www.mydummy.server.org/lib/extjs/ext-6.0.0/exa
20 2023-03-16
编程技术问答社区
在不同的环境中部署相同的Javascript webapp构建
我有一个EXTJS应用程序和一些不同的环境(本地机器,开发,类似生产的测试环境和生产). EXTJS应用程序得到了Java后端的支持,Java的后端也在本地机器,开发环境,类似生产的测试环境或生产环境(虽然与前端应用程序所处的位置不同)./p> 在最后两个环境中,我想构建一个extjs应用程序的一个构建,然后首先将其部署到测试服务器,然后在准备好发布时将完全相同的构建部署到生产服务器时. 问题:是否有可能以某种方式使用部署前端的环境,以确定EXTJ应该连接到哪个后端?由于EXTJS前端是在客户端的计算机上执行的,因此它不知道它应该连接到生产后端或测试后端. 解决此类问题的最佳方法是什么? (以干净的方式)通常是一个JavaScript Web应用程序,并将其部署到几个不同的环境中并与其相应的后端应用程序进行通信? 解决方案 (以干净的方式)通常是构建的JavaScript Web应用程序和 部署到几个不同的环境并与他们的 相应的后端应用程序? 好吧,案件不
8 2023-03-15
编程技术问答社区
无法使用JSON结果将数据呈现到网格列中
我有一个带有这样的网格商店. var gridStore = Ext.create('Ext.data.Store',{ proxy : { type : 'ajax', actionMethods : { read : 'POST' }, url : 'getECIAgentWrapperJobs.do', reader : { type : 'json', rootProperty : 'rows', totalProperty : 'results' } }, pageSize : 3, autoLoad : {start: 0, limit: 3} }); 显然,它向URL提出了AJAX请求. 我为这家商店获得的JSON响应看起来像这样: {
0 2023-02-18
编程技术问答社区
分页在extjs中不能正常工作
我的分页栏显示,并说显示1-5个.但是,所有10个记录中的所有记录都在显示.我似乎无法弄清楚. 这是我的列表.js文件 Ext.define('MyApp.view.main.List', { extend: 'Ext.grid.Panel', xtype: 'mainlist', require: [ 'MyApp.view.student.StudentForm' ], title: 'Student Records', scrollable: true, margin: 20, layout: { type: 'vbox', align: 'stretch' }, reference: 'studentGrid', frame: true, collapsible: true, store: 'StudentStore', collapsible: true, columns: [ { text: 'Name',
6 2023-01-30
编程技术问答社区
如何在extjs6中为文本表单字段添加工具提示
我有用于创建/渲染输入字段的功能,但我不知道如何在Extjs6 中添加工具提示 这是我的功能: createInputField: function(value, fieldsMarginBottom, readonly) { var fieldStyle = this.getFieldStyle(readonly); var nameField = Ext.create('Ext.form.field.Text', { name: 'name', readOnly: true, hideLabel: true, value: value, width: this.fieldWidth, style: { marginBottom: fieldsMarginBottom +
6 2023-01-27
编程技术问答社区
动态模型操作
我正在搜索有关模型操作的最佳实践,显然,在4.x中,您具有此功能(setField,示例在这里). 但是,在6.x中,这似乎已经消失了.我记得在Sencha论坛上读到动态模型并不是真正的"最佳实践",所以这就是为什么它在v6中似乎消失了? 我可以在原型上做到这一点 MyModel.prototype.fields.push(Ext.create('Ext.data.field.Field', { ... })); ,这是最好的方法吗? 我们将拥有网格,用户可以隐藏列,因此有时必须更改模型验证.另外,用户定义的字段将通过数字,日期,字符串等.取决于他们选择的类型,因此验证将动态变化. 谢谢. 解决方案 您可以尝试动态定义模型,然后调用store.setModel(). var starkStore = Ext.create('Ext.data.Store', { model: Ext.data.Model, // only here
6 2023-01-25
编程技术问答社区
如何在extjs6中发送Ajax到远程服务器?
我正在使用客户端的ExtJS-6.0.0开发一个应用程序.我在端口80 中运行客户端应用程序.我的服务器端应用程序以 端口8084 运行.我想创建一个AJAX请求以将请求发送到服务器,并且此请求具有以下属性: var json = { "@class": "ir.javan.geoad.entity.Melk", "title": "itsme", "description": "Hi all", "callPhone": "0912312312", "address": "ya ali", "accuracy": "MANTAQE", "user": { "email": "itsme.mm@gmail.com", "name": "asdf", "family": "asdf" } }; Ext.Ajax.request({ url: 'http://loca
0 2023-01-24
编程技术问答社区
Ext JS 6色域用户体验--显示颜色而不是数值
尝试使用ColorField UX,默认值是选择颜色后,它显示了Picker中该颜色的十六进制值.我的用户不知道这意味着什么...我该如何将选择器的背景色设置为所选颜色(没有文本十六进制值)?谢谢! 解决方案 您无法轻易从输入字段中删除值,因为这会导致选择器和表单提交的问题.但是,您可以调整文本颜色和背景颜色: listeners: { afterrender: function(cmp) { if(cmp.inputEl && cmp.inputEl.dom) { cmp.inputEl.dom.style.backgroundColor = "#" + cmp.getValue(); cmp.inputEl.dom.style.color = "#" + cmp.getValue(); } }, change: function(cmp, nV) {
8 2023-01-22
编程技术问答社区
在应用程序的其他部分之前加载app.js
我试图弄清楚如何在允许用户获取实际应用程序之前加载app.js.我试图做的是加载用户的配置文件在我的所有类EXT. FIRE之前.因此,例如,在ext.define中,我可以设置标题属性,可以从此全局用户配置var中提取.不,我不想经过并更改所有这些属性以使用initcomponent ...可能需要一段时间. 相反,我想做的就是加载配置,然后让Ext.Defines运行,但是我需要Ext JS和我的定义类之一,才能在其余类之前加载.这可能吗?我一直在研究sencha cmd设置,但是我一直在使它起作用.我正在玩bootstrap.manifest.exclude: "loadOrder"属性,它加载了经典.我可以使用我的模型加载配置. 我在下面有一个很高的示例(这是Ext.define('MyConfigurationModel', { extend: 'Ext.data.Model', singleton: true, fields: [{ name: 'testValu
6 2023-01-22
编程技术问答社区
ExtJS:在生产构建中覆盖所有AJAX调用
我正在尝试做的是覆盖所有ajax请求,包括ajax代理,因此我创建的是ext.data.connection的覆盖.在开发模式中,这就像一个魅力,但在生产建设中,事情会变得有点奇怪. 事物变得奇怪的原因是因为我们正在做一些"拆分"构建(链接在这里) .意思是,我们将所有框架代码放入自己的文件中,然后具有"app.js",这基本上是我们用于引导我们的应用程序的东西,以及"viewport.js",它是启动成功后的实际应用程序.我们这样做是因为在"app.js"中,我们有一个验证调用,确保用户有效,如果它们是,那么我们加载"ViewPort.js". 我认为这是问题,因为我们覆盖了这样一个核心的功能,它实际上并没有在app.js加载之前被覆盖,这在该点ext.ajax - 一个单例已经创建了覆盖了rocliddand类ext.data.connection - 我们丢失了覆盖.它看起来像override包含在app.js中,因此此假设会有意义. 我认为需要发生什么是build.
16 2022-12-19
编程技术问答社区
将HTML显示为文本的组合框
我的treecolumn具有组合作为编辑器组件.选项菜单中的选择是使用HTML正确渲染的,但是输入框并未渲染HTML,它仅显示标签(请参见下面的图像.) . 我如何使其也将值呈现为HTML? P.S. 此解决方案在这里 extjs 4渲染html combobox中的值似乎不使用ExtJS6版本,检查 这是问题位置代码(Rendere depth.TypeParameter:返回带有HTML标签的文本) { xtype: 'treecolumn', dataIndex: 'text', text: Poly.utils.locale.Base.localeName, flex: 1, getEditor: function (record) {
2 2022-11-16
编程技术问答社区
ExtJS 6网格按关联模型分组
上下文 不久前,我使用了此答案实现远程排序和过滤.使用格式" AssocedModel.issociatedModelfield",我可以轻松地解析服务器端代码中的表达式以查询数据库. 问题 虽然这能完成这项工作,但我遇到了分组的另一个问题 - 我已经配置为本地 - 相关模型.如果我对显示关联字段的列进行分组,则不会在没有错误的情况下崩溃或扩展.为网格的根模型做同样的事情不会抛出任何错误. 可以在此控制台日志中的错误跟踪如下: ext-all-debug.js:198133 Uncaught TypeError: Cannot read property 'isModel' of undefined getMetaGroup @ ext-all-debug.js:198133 doCollapseExpand @ ext-all-debug.js:198284 collapse @
30 2022-10-27
编程技术问答社区
绑定网格和表单 ExtJs 6
我有一个来自查看模型(Java Restful Web服务的AJAX代理数据)的网格填充记录.当我在网格表单中选择记录时,并且显示字段.记录使用表格可编辑. 我有一个标签字段,该字段载于商店,每当用户选择记录时,我都应该能够填充与记录相关的数据. "data" : [ { "createdOn" : 1475678859000, "updatedOn" : 1475679885000, "updatedBy" : null, "id" : 174, "userName" : "ffff, "firstName" : "gg", "lastName" : "ggg", "salesDepartment" : [ { "id" : 3, "code" : "FC", "name" : "Fiat-Chrysler", "departmentHead" : "xxx", "applicationCode" : null} ],} 我需要绑定销售部门对象的ID值.
14 2022-10-26
编程技术问答社区