2011-08-09 20 views
33

मैं slickgrid और jqgrid के बीच तय करने की कोशिश कर रहा हूँ। मुझे लगता है कि उनमें से दोनों फीचर समृद्ध हैं। Jqgrid में बहुत अच्छा प्रलेखन है, इसलिए & चलाना आसान है।SlickGrid बनाम JQGrid

मैं समझने की कोशिश कर रहा हूँ, कैसे अलग वे कर रहे हैं, कार्यान्वयन विवरण के मामले के बाद से मैंने सुना चालाक ग्रिड बहुत तेजी से होता है में। मैं बस सोच रहा था कि अगर किसी ने कुछ उपयोगी इनपुट प्रदान करने के लिए प्रत्येक ग्रिड के आंतरिक को कुछ बेंचमार्किंग/पता किया है।

संपादित करें 1: @oleg - आपकी प्रतिक्रिया के लिए धन्यवाद। क्षमा करें, मुझे डर था कि मैंने पर्याप्त विवरण प्रदान नहीं किए होंगे। हालांकि मेरे पास सभी उपयोग-मामले नहीं हैं, लेकिन जब डेटा छोटा होता है तो डेटा स्थानीय होता है और सर्वर-साइड आभासी स्क्रॉलिंग, फ़िल्टरिंग, सॉर्टिंग इत्यादि दोनों स्थानीय डेटा का उपयोग करेंगे। जेसन प्राथमिक डेटासौयर होगा। मैं किसी ऐसे व्यक्ति से इनपुट प्राप्त करने की कोशिश कर रहा था जो दोनों ग्रिड के आंतरिक को समझ सके। मैं उन लोगों का न्याय करने के लिए पर्याप्त क्लाइंट-साइड कार्यान्वयन को समझ नहीं पा रहा हूं। मेरे सहयोगी में से एक ने उल्लेख किया है कि स्लिम ग्रिड बेहतर हो सकता है क्योंकि इसे वर्चुअल प्रतिपादन और कुंजी-बोर्ड समर्थन के साथ विकसित किया गया था। मेरा प्रश्न खुला है लेकिन ग्रिड के मूल कार्यान्वयन से अधिक जटिल परिदृश्यों में भी यह कुशल हो सकता है, जैसे कि उप-ग्रिड, पेड़ आदि। यदि कोर डिज़ाइन से कोई भी प्रस्थान करने के लिए कोई प्रस्थान नहीं है।

ठीक है, jqgrid की आपकी विशेषज्ञता के आधार पर, आप Slick Grid से इस स्निपेट का जवाब कैसे देंगे?

"ग्रिड बनाम डाटा मुख्य अंतर SlickGrid और अन्य ग्रिड कार्यान्वयन के बीच है मैंने देखा है कि वे समझते हैं और डेटा (खोज, प्रकार, पार्स, ajax लोड, आदि के साथ काम करने में सक्षम होने पर बहुत ज्यादा ध्यान है ।) और एक बेहतर "ग्रिड" (या, संपादन योग्य ग्रिड, एक स्प्रेडशीट) के मामले में किया जा रहा है पर पर्याप्त नहीं। यह बहुत अच्छा है अगर सभी आप क्या करना चाहते है एक HTML तालिका "सजाना" या एक सरल सूची पर एक सामने अंत तमाचा , लेकिन कुछ और के लिए भी अनम्य। डाटा जटिल है। यह व्यापार के नियम हैं। यह गैर आंतरिक गुण है। संपादित करने से एक तत्व में से एक संपत्ति अन्य संपत्तियों या यहाँ तक कि अन्य तत्वों को संशोधित व्यापक परिवर्तन करने के लिए नेतृत्व कर सकते हैं। यह निर्भरता है। क्या मैं मैं कह रहा हूं कि डेटा से निपटने से ग्रिड कॉन्ट्रो का उपयोग करके डेवलपर को सबसे अच्छा छोड़ दिया जाता है एल। ग्रिड कार्यान्वयन और एपीआई में उन सभी को फिट करने का प्रयास केवल इसकी प्रयोज्यता को सीमित करेगा और काफी ब्लोट जोड़ देगा। SlickGrid एक अलग दृष्टिकोण लेता है। सरलतम परिदृश्य में, यह एक सरणी इंटरफेस के माध्यम से डेटा तक (यानी "DataItem" का उपयोग किसी विशिष्ट स्थान पर एक आइटम के लिए मिलता है और "data.length" मदों की संख्या निर्धारित करने के लिए करने के लिए), लेकिन एपीआई इस तरह से संरचित है अंतर्निहित डेटा में किसी भी संभावित परिवर्तन के लिए ग्रिड प्रतिक्रिया करना बहुत आसान है। "

संपादित करें 2: Datatables forum post से स्निपेट:" * DataTables एक HTML तालिका सजाना करने की कोशिश कर रहा है। यह देखा जा सकता है, उदाहरण के लिए, डेटाटेबल्स द्वारा तालिका टैग के उपयोग से, जबकि स्लिकग्रिड एक तालिका की तरह दिखने वाला डिस्प्ले बनाने के लिए डीआईवी तत्वों का उपयोग करता है। लेकिन एक टेबल साथ नहीं - जैसे, वहाँ कई तकनीकों का, आभासी प्रतिपादन, जो DIVs साथ इस्तेमाल किया जा सकता की तरह हैं। पंक्तियों को 100-110 प्रस्तुत करना संभव नहीं है और तालिका में पहले 100 नहीं, लेकिन यह डीआईवी के साथ कोई समस्या नहीं है, इसलिए मुझे डर है कि यह इस समय लागू नहीं है। क्या किया जा करने की आवश्यकता होगी एक div टैग मार्कअप का उपयोग करने के DataTables कन्वर्ट करने के लिए है, लेकिन फिर आप ढीला DataTables का प्राथमिक लक्ष्य है, जो प्रगतिशील वृद्धि और पहुंच पर ध्यान केंद्रित है। * "

धन्यवाद

उत्तर

30

मैं jqGrid और SlickGrid पर देखा और पाया कि SlickGrid और अधिक सुंदर ढंग से है लिखा हुआ; SlickGrid के लिए अधिकांश उपयोग-मामलों के लिए कम कॉन्फ़िगरेशन की आवश्यकता है; jqGrid, हालांकि, अधिक जटिल मामलों (जैसे वर्चुअल स्क्रॉलिंग) स्थापित करने के लिए कम कॉन्फ़िगरेशन की आवश्यकता है;

jqGrid में बेहतर प्रलेखन हो सकता है लेकिन jqGrid के लिए सर्वर-साइड कनेक्शन भाग एक वाणिज्यिक पेशकश द्वारा कवर किया गया है और इस भाग पर दस्तावेज क्लाइंट-साइड की तुलना में प्राप्त करना अधिक कठिन है।

दूसरी तरफ, स्लेकग्रिड में कुछ बेहतरीन उदाहरण हैं जो अधिकांश उपयोग-मामलों को कवर करते हैं और स्रोत टिप्पणियों से भरा है और जावास्क्रिप्ट और jquery के कुछ मध्यवर्ती ज्ञान वाले किसी भी व्यक्ति के लिए सुलभ है।

+0

कुछ और उपयोगी जानकारी के लिए मूल पोस्ट में 2 संपादित करें देखें। – StudentForever

+0

मूल उपयोग के लिए, jqGrid सरल है और इसमें अधिक कार्यक्षमता है (उदा। पंक्ति और कॉलम को ठीक करना)। दूसरी ओर, jgGrid तालिका के रूप में प्रस्तुत करता है, जिसका अर्थ है कि आपको इंटरनेट एक्सप्लोडर (किसी भी संस्करण) में 20 से 50 पंक्तियों के बीच कहीं भी शुरू होने वाली सामान्य प्रदर्शन समस्याएं मिलती हैं (आईई संस्करण और कंप्यूटर चश्मा के आधार पर)। इसलिए, SlickGrid एकमात्र व्यवहार्य विकल्प है। क्योंकि आप अतिरिक्त काम के माध्यम से, slickgrid में jqGrid की उन्नत कार्यक्षमता भी प्राप्त कर सकते हैं। निचली पंक्ति: दोनों वास्तव में अच्छे नहीं हैं, लेकिन स्लिमग्रिड बहुत कम खराब है, और अन्य सभी विकल्प (जिन्हें मैं जानता हूं) भी बदतर हैं। –

+0

http://jspreadsheets.com/ पर जावास्क्रिप्ट स्प्रेडशीट लाइब्रेरी तुलना पर एक नज़र डालें; ऐसा लगता है कि क्लस्टरराइज एक अच्छा नया विकल्प है, खासकर जब आप jQuery नहीं चाहते हैं। और हाथों की तरह दिखता है कि यह इस तरह की चीज़ के लिए एक व्यवहार्य विकल्प बन गया है। –

18

कौन सी भाषा है अध्ययन करना अधिक कठिन है: चीनी, फिनिश या कुछ छोटे इंडियाना लोक की भाषा?

तुलनात्मक प्रश्न हमेशा कठिन होते हैं। आपके पास ऐसे लोग हैं जो वास्तव में अच्छे उन सभी उत्पादों को जानते हैं जिन्हें आप तुलना करना चाहते हैं। इसके अलावा आपको उस उत्पाद का कौन सा हिस्सा परिभाषित करना चाहिए जिसे आप अभी उपयोग करना चाहते हैं और जो भविष्य में महत्वपूर्ण हो सकता है। क्या आप ग्रिड इनपुट के लिए JSON या XML डेटा का उपयोग करते हैं या आप स्थानीय जावास्क्रिप्ट डेटा का उपयोग करते हैं? क्या आपको मानक ग्रिड या ग्रिड को सबग्रिड्स, पेड़ग्रिड या ग्रुपिंग के साथ ग्रिड के साथ उपयोग करने की आवश्यकता है?

इससे पहले कि आप ग्रिड के उपयोग के क्षेत्र को परिभाषित न करें इससे पहले कि आपको कोई अच्छा जवाब नहीं मिलेगा। अंत में कभी-कभी यह भी महत्वपूर्ण हो सकता है कि आप वर्तमान में कैसे जानते हैं और केवल कौन सा दस्तावेज या उदाहरण आप आसानी से समझ सकते हैं और स्वयं का उपयोग कर सकते हैं। अन्य लोगों का अनुभव जो आप उपयोग कर सकते हैं उत्पाद की विशेषताओं के रूप में अधिक महत्वपूर्ण हो सकता है। आप टैग "jqgrid" साथ और टैग के साथ stackoverflow.com पर प्रश्नों की संख्या को देखें, तो "slickgrid" आप देख सकते हैं में उत्पाद मदद कर सकता है आप stackoverflow

27

उत्पादन/गुस्से में दोनों jqGrid & slickgrid इस्तेमाल किया है, यहाँ मेरी 2 सेंट हैं:। jqGrid के साथ और में हुक आरंभ करने के लिए बहुत आसान था लेकिन हम जल्दी से पाया खुद को फिट करने के लिए है कि हम क्या jqGrids मार्ग में चाहते थे होने के खिलाफ झंझरी चीजों को करने का हमने संपादन क्षमताओं को कार्यान्वित करना भी मुश्किल पाया और (स्मृति से - यह एक साल पहले था) इसने सेल संपादन के बजाए एक पंक्ति संपादन मॉडल में मजबूर किया, जो अच्छी तरह से प्रदर्शन नहीं करता था।

स्लिम ग्रिड के साथ हमने अभी तक एक ऐसी सुविधा को मारना नहीं है जो गायब था/हम आसानी से प्लगइन नहीं कर सके। दस्तावेज़ीकरण काफी अस्तित्वहीन था लेकिन अब यह बेहतर है (https://github.com/mleibman/SlickGrid/wiki/_pages) लेकिन आज तक हम स्रोत में कूद रहे हैं। कहना है कि एपीआई मैंने देखा है सबसे अच्छा है, और बड़े डेटा वॉल्यूम्स और जटिल संपादकों के साथ प्रदर्शन उत्कृष्ट रहा है (यानी 7 पर कुछ मुद्दे, लेकिन हमारे एमवीसी फ्रेमवर्क & जटिल संपादकों बनाम ग्रिड को कभी अलग नहीं किया गया)

सब कुछ, मैं अत्यधिक स्लिम ग्रिड की सिफारिश करता हूं

2

मैं @ user175528 से सहमत हूं। हमने अपने आवेदन में ग्रिड का व्यापक रूप से उपयोग किया है और इसके स्वरूपकों, संपादकों और सत्यापनकर्ताओं में निर्मित वास्तव में उपयोग करना आसान है और कस्टम भी लिखना आसान है।

यह बड़े डेटासेट को अच्छी तरह से संभालता है (और उन्हें हवा के माध्यम से खोजता है)। इसके अतिरिक्त, पेजिंग और सॉर्टिंग सेट करना आसान है।

शुरू में जब मैं slickgrid का उपयोग शुरू किया, मैं इसे एक और विजेट में लिपटे था ताकि मैं किसी अन्य प्रदाता को स्थानांतरित कर सकता है यदि आवश्यकता हुई, लेकिन अब के रूप में, यह दोषरहित काम करने के लिए लगता है।

मुझे अभी तक इसके आसपास नहीं मिला है, लेकिन मैं अपने ब्लॉग पर कुछ अच्छे slickgrid उदाहरण प्रस्तुत कर रहा हूं।