두 가지 대답을드립니다. 다른 도구와 결합 된 npm 은 강력하지만 설정하려면 약간의 작업이 필요합니다. 일부 라이브러리 만 다운로드하려는 경우 대신 Library Manager (Visual Studio 15.8에서 릴리스 됨) 를 사용할 수 있습니다 .
NPM (고급)
먼저 프로젝트의 루트에 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이 새 asp.net 핵심 프로젝트에서 사용되는 Bootstrap, JQuery 및 기타 라이브러리를 node_modules라는 폴더에 다운로드합니다. 다음 단계는 파일을 적절한 위치에 복사하는 것입니다. 이를 위해 NPM에서 다운로드 한 gulp를 사용합니다. 그런 다음 프로젝트 루트에 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"));
});
이 파일에는 프로젝트가 빌드되고 정리 될 때 실행되는 JavaScript 코드가 포함되어 있습니다. 필요한 모든 파일을 lib2에 복사합니다 ( lib가 아닌 – 쉽게 변경할 수 있습니다 ). 새 프로젝트에서와 동일한 구조를 사용했지만 다른 위치로 파일을 변경하는 것은 쉽습니다. 파일을 이동하는 경우 _Layout.cshtml 도 업데이트해야합니다 . 프로젝트를 정리하면 lib2- 디렉토리의 모든 파일이 제거됩니다.
gulpfile.js 를 마우스 오른쪽 버튼으로 클릭 하면 Task Runner Explorer를 선택할 수 있습니다 . 여기에서 수동으로 gulp를 실행하여 파일을 복사하거나 정리할 수 있습니다.
Gulp는 JavaScript 및 CSS 파일 축소와 같은 다른 작업에도 유용 할 수 있습니다.
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 도 업데이트해야합니다 .