जब मैंने रिलीज मोड में अपनी एमवीसी 4 प्रोजेक्ट चलाया, तो SlickGrid का उपयोग करने वाला एक पृष्ठ सही ढंग से प्रदर्शित नहीं हुआ (ग्रिड बहुत लंबा है, और ग्रिड कोशिकाएं गायब हैं)।न्यूनतम कोड मूल के बराबर क्यों नहीं है?
हालांकि, मुझे नहीं लगता कि यह स्लिमग्रिड का मुद्दा है, लेकिन बंडलर (System.Web.Optimization
जो एमवीसी 4 में एकीकृत है) के कोड को छोटा करता है।
मैंने मिनीफाइड जावास्क्रिप्ट को पकड़ लिया और समस्या को ठीक होने तक एक समय में एक क्षेत्र में खनन को उलटना शुरू कर दिया। मैंने पाया है कि बदलते हैं तो मूल
function SlickFilter(item, args) {
if (item.pctSortKey.key < args.percentCompleteThreshold) {
return false;
}
if (args.searchString != "" && item.option.indexOf(args.searchString) == -1 && item.option != "Unweighted Response" && item.option != "Median" && item.option != "Average") {
return false;
}
return true;
}
को
function SlickFilter(n,t){var i=n.option,r=t.searchString;return n.pctSortKey.key<t.percentCompleteThreshold||r!=""&&i.indexOf(r)==-1&&i!="Unweighted Response"&&i!="Median"&&i!="Average"?!1:!0}
(और स्क्रॉल माफ, मैं वास्तव में न्यूनतम किया गया संस्करण छोड़ने के लिए के रूप में-है चाहते हैं) समस्या का समाधान करता है, तो minified फ़ाइल के अन्य सभी तत्वों अपरिवर्तित हैं SlickGrid कुछ परिणामों को फ़िल्टर करने के लिए एक कॉलबैक फ़ंक्शन प्रदान करने के लिए
dataView.setFilter(SlickFilter);
:
समारोह की तरह किया जाता है।
यह कैसे है कि मूल और छोटा कार्य बराबर नहीं है?
अद्यतन
SlickGrid फिल्टर समारोह है कि मैं प्रदान करते हैं "संकलन" है। वह संकलन चरण minified संस्करण के साथ विफल रहा है।
function anonymous(_items,_args) {
var _retval = [], _idx = 0; var n, t = _args; _coreloop: for (var _i = 0, _il = _items.length; _i < _il; _i++) { n = _items[_i];
//debugger;
var i = n.option,
r = t.searchString;
return
n.pctSortKey.key < t.percentCompleteThreshold
||
r !=""
&& i.indexOf(r)==-1
&& i != "Unweighted Response"
&& i != "Median"
&& i != "Average"
? !1
: !0
; } return _retval;
}
नोट कई वापसी बयान: संकलित न्यूनतम किया गया कोड की तरह दिखता है।
इस अतिरिक्त अंतर्दृष्टि के साथ, मैं एक प्रासंगिक SlickGrid बग की पहचान करने में सक्षम था:
https://github.com/mleibman/SlickGrid/issues/301
क्या आप स्वयं जेएस को कम कर रहे हैं?वहाँ बहुत से मिनीफायर उपकरण हैं इसलिए मैं आपको एक और कोशिश करने की सलाह देता हूं। – lolol
@lolol: नहीं, मैं 'System.Web.Optimization' का उपयोग कर रहा हूं जिसे एमवीसी 4 में एकीकृत किया गया है। इसे स्पष्ट करने के लिए प्रश्न को अपडेट किया गया। –
मेरा बुरा, मैं वास्तव में आपकी मदद नहीं कर सकता। माफ़ कीजिये। (मुझे भी इसी तरह की समस्याएं मिलीं, लेकिन मैं इसे स्वयं कर रहा था, समस्या को हल करने वाले टूल को बदल रहा था) – lolol