απαιτήσεις: Η αρθρωτή επέκταση του System.Web.Optimization (γνωστή και ως Microsoft ASP.NET Web Optimization Framework) που συνοδεύει το Microsoft ASP.NET MVC είναι ξεπερασμένη και δεν έχει ενημερωθεί για μεγάλο χρονικό διάστημα (Τελευταία ενημέρωση: 20/2/2014, υπάρχουν ορισμένα σφάλματα που κανείς δεν έχει διορθώσει), η εισαγωγή του bootstrap 4 θα προκαλέσει σφάλμα, χρησιμοποιώντας ένα Bundle Transformer τρίτου κατασκευαστή για να αντικαταστήσει το προεπιλεγμένο.
Σχετικά με τη συμπίεση σε πακέτο:Η σύνδεση με υπερσύνδεσμο είναι ορατή.
System.Web.Optimization:F:\...\πακέτα\Microsoft.AspNet.Web.Optimization.1.1.3\lib\net40\System.Web.Optimization.dll
Διεύθυνση NuGet:Η σύνδεση με υπερσύνδεσμο είναι ορατή.
Το System.Web.Optimization θα εμφανίσει το ακόλουθο σφάλμα κατά την ομαδοποίηση του Bootstrap 4:
/* 未能缩小。正在返回未缩小的内容。 (6,10): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-' (6,25): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-' (6,42): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-' (6,59): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-' (6,74): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-' (6,88): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή κλείσιμο σγουρού άγκιστρα, βρέθηκε '-' (6.105): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-' (6.122): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή κλείσιμο σγουρού άγκιστρα, βρέθηκε '-' (6.138): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-' (6.153): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή κλείσιμο σγουρού άγκιστρα, βρέθηκε '-' (6.168): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-' (6.181): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-' (6.196): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-' (6.216): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-' (6.234): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-' (6.254): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-' (6.272): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή κλείσιμο με σγουρά άγκιστρα, βρέθηκε '-' (6.287): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-' (6.305): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή κλείσιμο σγουρού άγκιστρα, βρέθηκε '-' (6.322): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-' (6.338): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-' (6.353): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-' (6.371): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή κλείσιμο με σγουρά άγκιστρα, βρέθηκε '-' (6.393): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-' (6.415): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-' (6.437): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή κλείσιμο με σγουρά άγκιστρα, βρέθηκε '-' (6.460): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή σγουρό άγκιστρο κλεισίματος, βρέθηκε '-' (6.644): σφάλμα χρόνου εκτέλεσης CSS1062: Αναμενόμενο ερωτηματικό ή κλείσιμο με σγουρά άγκιστρα, βρέθηκε '-' */
/*! * Bootstrap v4.1.3 (https://getbootstrap.com/) * Πνευματικά δικαιώματα 2011-2018 The Bootstrap Authors * Πνευματικά δικαιώματα 2011-2018 Twitter, Inc. * Άδεια χρήσης από το MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
Μετασχηματιστής δέσμης
Bundle Transformer - Μια αρθρωτή επέκταση του System.Web.Optimization (γνωστό και ως Microsoft ASP.NET Web Optimization Framework). Οι StyleTransformer και ScriptTransformer, οι οποίες περιλαμβάνονται στον πυρήνα του Bundle Transformer και υλοποιούν τη διεπαφή IBundleTransform. Έχουν σχεδιαστεί για να αντικαταστήσουν τις τυπικές: CssMinify και JsMinify.
Οι κύριες διαφορές μεταξύ του StyleTransformer και της κλάσης και των τυπικών υλοποιήσεων ScriptTransformer: η δυνατότητα εξαίρεσης περιττών στοιχείων κατά την προσθήκη στοιχείων από τον κατάλογο, δεν παράγει επανακλιμάκωση προ-ελαχιστοποιημένων στοιχείων, υποστηρίζει αυτόματη μετατροπή σχετικών διαδρομών σε απόλυτες διαδρομές στον κώδικα CSS (χρησιμοποιώντας UrlRewritingCssPostProcessor) κ.λπ. Αυτές οι δεν παράγουν ελαχιστοποίηση του κώδικα κατά το χρόνο εκτέλεσης, αλλά αυτή η λειτουργία μπορεί να προστεθεί με την εγκατάσταση minifier-modules (οι ενότητες που είναι διαθέσιμες τώρα βασίζονται στο Microsoft Ajax Minifier, YUI Compressor για .NET, NUglify, Google Closure Compiler, Douglas Crockford's JSMin, Dean Edwards' Packer, UglifyJS από τον Mihai Bazon, CSSO (CSS Optimizer) από τον Sergey Kryzhanovsky, WebGrease και Clean-css). Επιπλέον, μπορείτε να εγκαταστήσετε ενότητες μετάφρασης για να υλοποιήσετε τη μετάφραση κώδικα σε ενδιάμεσες γλώσσες (LESS, Sass, SCSS, CoffeeScript, TypeScript, Mustache (με χρήση Hogan) και Handlebars). Εκτός από αυτό, υπάρχει ένας τρίτος τύπος μονάδας στο Bundle Transformer - μεταεπεξεργαστές. Ο μεταεπεξεργαστής τρέχει μετά τον μεταφραστή και πριν από τον συμπιεστή. Οι ακόλουθοι μεταεπεξεργαστές είναι πλέον διαθέσιμοι: URL Rewrite CSS Postprocessor (περιλαμβάνεται στον πυρήνα) και Postprocessor modules που βασίζονται στο Autoprefixer του Andrey Sitnik.
Διεύθυνση GitHub:Η σύνδεση με υπερσύνδεσμο είναι ορατή. Εκμάθηση τεκμηρίωσης:Η σύνδεση με υπερσύνδεσμο είναι ορατή.
Το BundleTransformer.Core παρέχει απλώς λειτουργικότητα ομαδοποίησης καιΛειτουργίες όπως η συσκότιση συμπίεσης δεν είναι διαθέσιμεςΕάν η συμπίεση και άλλες λειτουργίες πρέπει να εισαχθούν σε άλλες ενότητες, αυτό το άρθρο θα χρησιμοποιήσειBundleTransformer.NUglifyΗ μονάδα επέκτασης συμπιέζει τις ομαδοποιημένες εξόδους CSS και JS.
Το BundleTransformer.NUglify περιέχει δύο προσαρμογείς ελαχιστοποιητή: "NUglifyCssMinifier" (για σμίκρυνση κώδικα CSS) και "NUglifyJsMinifier" (για σμίκρυνση κώδικα JS). Αυτοί οι προσαρμογείς εκτελούν ελαχιστοποίηση (https://github.com/trullock/NUglify). Επομένως, το έργο μπορεί να εισαγάγει απευθείας το BundleTransformer.NUglify με την ακόλουθη εντολή NuGet:
Αφού ολοκληρωθεί η εγκατάσταση, τροποποιήστε τη διαμόρφωση του BundleConfig.cs με τον ακόλουθο κώδικα:
Σε αυτό το σημείο, μεταβείτε στον σύνδεσμο /plugins/site/login, στον πόρο css καιΜη συμπιεσμένο, πρέπει επίσης να τροποποιήσετε τη διαμόρφωση του web.config για να κάνετε το "NUglifyCssMinifier" το προεπιλεγμένο πρόγραμμα ελαχιστοποίησης CSS.
UrlRewritingCssPostProcessor: υποστηρίζει την αυτόματη μετατροπή σχετικών διαδρομών σε απόλυτες διαδρομές στον κώδικα CSS κ.λπ.
Εντοπίστε το αρχείο web.config/configuration/bundleTransformer/core/cssκόμβος, τροποποιημένος ως εξής:
Η πλήρης διαμόρφωση έχει ως εξής:
(Τέλος)
|