मैं आपको दो उत्तर देता हूं। npm अन्य उपकरणों के साथ संयुक्त शक्तिशाली है, लेकिन सेटअप करने के लिए कुछ काम की आवश्यकता है। यदि आप बस कुछ लाइब्रेरी डाउनलोड करना चाहते हैं, तो आप इसके बजाय लाइब्रेरी मैनेजर का उपयोग करना चाह सकते हैं (विजुअल स्टूडियो 15.8 में जारी)।
एनपीएम (उन्नत)
सबसे पहले आप के प्रोजेक्ट के मूल में package.json जोड़ें । निम्नलिखित सामग्री जोड़ें:
{
"version": "1.0.0",
"name": "asp.net",
"private": true,
"devDependencies": {
"gulp": "3.9.1",
"del": "3.0.0"
},
"dependencies": {
"jquery": "3.3.1",
"jquery-validation": "1.17.0",
"jquery-validation-unobtrusive": "3.2.10",
"bootstrap": "3.3.7"
}
}
यह NPM को बूटस्ट्रैप, JQuery और अन्य पुस्तकालयों को डाउनलोड करेगा जो एक नए asp.net कोर प्रोजेक्ट में नोड_मॉड्यूल्स नामक फ़ोल्डर में उपयोग किया जाता है। अगला कदम फाइलों को एक उपयुक्त स्थान पर कॉपी करना है। ऐसा करने के लिए हम gulp का उपयोग करेंगे, जिसे NPM ने भी डाउनलोड किया था। फिर आप gulpfile.js नाम के प्रोजेक्ट के रूट में एक नई फ़ाइल जोड़ें । निम्नलिखित सामग्री जोड़ें:
/// <binding AfterBuild='default' Clean='clean' />
/*
This file is the main entry point for defining Gulp tasks and using Gulp plugins.
Click here to learn more. http://go.microsoft.com/fwlink/?LinkId=518007
*/
var gulp = require('gulp');
var del = require('del');
var nodeRoot = './node_modules/';
var targetPath = './wwwroot/lib/';
gulp.task('clean', function () {
return del([targetPath + '/**/*']);
});
gulp.task('default', function () {
gulp.src(nodeRoot + "bootstrap/dist/js/*").pipe(gulp.dest(targetPath + "/bootstrap/dist/js"));
gulp.src(nodeRoot + "bootstrap/dist/css/*").pipe(gulp.dest(targetPath + "/bootstrap/dist/css"));
gulp.src(nodeRoot + "bootstrap/dist/fonts/*").pipe(gulp.dest(targetPath + "/bootstrap/dist/fonts"));
gulp.src(nodeRoot + "jquery/dist/jquery.js").pipe(gulp.dest(targetPath + "/jquery/dist"));
gulp.src(nodeRoot + "jquery/dist/jquery.min.js").pipe(gulp.dest(targetPath + "/jquery/dist"));
gulp.src(nodeRoot + "jquery/dist/jquery.min.map").pipe(gulp.dest(targetPath + "/jquery/dist"));
gulp.src(nodeRoot + "jquery-validation/dist/*.js").pipe(gulp.dest(targetPath + "/jquery-validation/dist"));
gulp.src(nodeRoot + "jquery-validation-unobtrusive/dist/*.js").pipe(gulp.dest(targetPath + "/jquery-validation-unobtrusive"));
});
इस फ़ाइल में एक जावास्क्रिप्ट कोड होता है जिसे परियोजना के निर्माण और साफ होने पर निष्पादित किया जाता है। यह सभी आवश्यक फाइलों को lib2 में कॉपी करेगा ( lib नहीं - आप इसे आसानी से बदल सकते हैं )। मैंने एक नए प्रोजेक्ट के समान संरचना का उपयोग किया है, लेकिन फ़ाइलों को किसी भिन्न स्थान पर बदलना आसान है। यदि आप फ़ाइलें स्थानांतरित करते हैं, तो सुनिश्चित करें कि आप _Layout.cshtml को भी अपडेट करते हैं । ध्यान दें कि जब प्रोजेक्ट को साफ किया जाता है तो lib2- डायरेक्टरी की सभी फाइलें हटा दी जाएंगी।
यदि आप gulpfile.js पर राइट क्लिक करते हैं , तो आप टास्क रनर एक्सप्लोरर का चयन कर सकते हैं । यहाँ से आप फ़ाइलों को कॉपी या साफ़ करने के लिए मैन्युअल रूप से gulp चला सकते हैं।
जावास्क्रिप्ट और सीएसएस-फाइलों को छोटा करने जैसे अन्य कार्यों के लिए भी गुल उपयोगी हो सकता है:
https://docs.microsoft.com/en-us/aspnet/core/client-side/using-gulp?view=aspnetcore-2.1
पुस्तकालय प्रबंधक (सरल)
आप प्रोजेक्ट पर राइट क्लिक करें और मैनेज क्लाइंट साइड-लाइब्रेरीज़ चुनें । फ़ाइल libman.json अब खुला है। इस फ़ाइल में आप निर्दिष्ट करते हैं कि कौन सी लाइब्रेरी और फ़ाइलों का उपयोग करना है और उन्हें स्थानीय रूप से कहाँ संग्रहीत किया जाना चाहिए। वास्तव में सरल! निम्न फ़ाइल एक नया ASP.NET Core 2.1 प्रोजेक्ट बनाते समय उपयोग किए जाने वाले डिफ़ॉल्ट पुस्तकालयों की प्रतिलिपि बनाता है:
{
"version": "1.0",
"defaultProvider": "cdnjs",
"libraries": [
{
"library": "jquery@3.3.1",
"files": [ "jquery.js", "jquery.min.map", "jquery.min.js" ],
"destination": "wwwroot/lib/jquery/dist/"
},
{
"library": "jquery-validate@1.17.0",
"files": [ "additional-methods.js", "additional-methods.min.js", "jquery.validate.js", "jquery.validate.min.js" ],
"destination": "wwwroot/lib/jquery-validation/dist/"
},
{
"library": "jquery-validation-unobtrusive@3.2.10",
"files": [ "jquery.validate.unobtrusive.js", "jquery.validate.unobtrusive.min.js" ],
"destination": "wwwroot/lib/jquery-validation-unobtrusive/"
},
{
"library": "twitter-bootstrap@3.3.7",
"files": [
"css/bootstrap.css",
"css/bootstrap.css.map",
"css/bootstrap.min.css",
"css/bootstrap.min.css.map",
"css/bootstrap-theme.css",
"css/bootstrap-theme.css.map",
"css/bootstrap-theme.min.css",
"css/bootstrap-theme.min.css.map",
"fonts/glyphicons-halflings-regular.eot",
"fonts/glyphicons-halflings-regular.svg",
"fonts/glyphicons-halflings-regular.ttf",
"fonts/glyphicons-halflings-regular.woff",
"fonts/glyphicons-halflings-regular.woff2",
"js/bootstrap.js",
"js/bootstrap.min.js",
"js/npm.js"
],
"destination": "wwwroot/lib/bootstrap/dist"
},
{
"library": "list.js@1.5.0",
"files": [ "list.js", "list.min.js" ],
"destination": "wwwroot/lib/listjs"
}
]
}
यदि आप फ़ाइलें स्थानांतरित करते हैं, तो सुनिश्चित करें कि आप _Layout.cshtml को भी अपडेट करते हैं ।