Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

220
Views
El desplazamiento infinito de Extjs bufferedStore no funciona para activar llamadas Ajax

Tengo una tienda almacenada en búfer que hace una llamada ajax. Tengo alrededor de 40 registros en total. Quiero que se activen las múltiples llamadas ajax al desplazar la página. Sin embargo, tan pronto como cargo la página, veo que se realizan múltiples llamadas ajax incluso sin desplazarse. ¿Qué cambio se necesita para que este comportamiento ocurra solo cuando me desplazo por la página (es decir, las llamadas ajax posteriores se realizan solo al desplazarme)? ¡Cualquier ayuda sería genial!

Mi tienda almacenada en búfer es la siguiente:

 Ext.define('myStore', { extend: 'Ext.data.BufferedStore', requires: [ 'myStoremodel' // model that the store takes in ], storeId: 'myTeststore', model: 'myStoremodel', remoteSort: true, buffered: true, leadingBufferZone: 2, trailingBufferZone: 2, pageSize: 10, proxy: { type: 'ajax', url: "/fetch/getNameList" // the API which returns data to load, timeout: 5 * 60 * 1000, reader: { rootProperty: 'data.name', totalProperty: 'data.recordSize' }, simpleSortMode: true } });

El resultado de la llamada ajax es el siguiente: La carga útil que se envía es:

 _dc: 1647375142598 page: 1 start: 0 limit: 10

La respuesta de la llamada ajax:

 {success: true, errorCode: 0, errorMsg: null,…} data: {recordSize: 10, limit: 9,…} name: [{id: 1234, name: "Jake_Mar142022", appId: 1, isClosed: null,…},…] 0: {id: 1234, name: "TimMar142022", appId: 1, isClosed: null,…} 1: {id: 1252, name: "RatMar142022", appId: null, isClosed: null,…} 2: {id: 1253, name: "MycahMar142022", appId: null, isClosed: null,…} 3: {id: 1238, name: "MeganMar142022", appId: null, isClosed: null,…} 4: {id: 1191, name: "MikeMar092022", appId: null, isClosed: null,…} 5: {id: 1271, name: "TomMar142022", appId: null, isClosed: null,…} 6: {id: 1211, name: "RamMar092022", appId: null, isClosed: null,…} 7: {id: 1212, name: "JustinMar092022", appId: 1, isClosed: null,…} 8: {id: 1213, name: "AnnieMar092022", appId: null, isClosed: null,…} 9: {id: 1231, name: "AnnMar142022", appId: null, isClosed: null,…} limit: 9 recordSize: 41 errorCode: 0 errorMsg: null success: true
over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Tiene varias llamadas porque extjs intenta obtener tantos datos como necesita para llenar la cuadrícula visible MÁS 2.

Si puede ver 26, esto haría 4 llamadas iniciales.

Para recibir una sola llamada, debe configurar pageSize en 30.

Si desea tener menos llamadas, debe aumentar el pageSize de página en el proxy, lo que aumenta el limit .

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!