2016-09-20 6 views
2

저는 Angular 2 프로젝트를 가지고 있는데 bootstrap-slider라는 JavaScript 패키지를 추가하고 싶습니다. 프로젝트에서 패키지를 어떻게 통합했는지 이해하는 데 어려움이 있습니다.Angular 2 프로젝트에서 js 패키지를 가져 오는 방법은 무엇입니까?

package.json 파일의 종속성 아래에 "bootstrap-slider"를 추가하고 "npm install"을 실행하여 node_modules에 패키지를 추가하기 시작했습니다. 내 패키지의 항목은 다음과 같습니다

"bootstrap-slider": "^9.2.0", 

나는 슬라이더에 대한 내용으로 새로운 폴더가 node_modules의 내부에 추가 된 것을 볼 수 있습니다. 몇 가지 가이드와 설명을 찾은 후에 JS 패키지를 제대로 가져오고 사용하기 위해 index.html에서 다음을 시도했습니다. 내 인덱스 HTML은 이제 다음과 같습니다

<!DOCTYPE html> 
<html lang="en"> 
<head> 
    <meta charset="utf-8"> 
    <meta http-equiv="x-ua-compatible" content="ie=edge"> 
    <meta name="viewport" content="width=device-width, initial-scale=1"> 

    <title><%= webpackConfig.metadata.title %></title> 

    <meta name="description" content="<%= webpackConfig.metadata.description %>"> 

    <% if (webpackConfig.htmlElements.headTags) { %> 
    <!-- Configured Head Tags --> 
    <%= webpackConfig.htmlElements.headTags %> 
    <% } %> 

    <!-- base url --> 
    <base href="<%= webpackConfig.metadata.baseUrl %>"> 
    <script src="../node_modules/bootstrap-slider/src/js/bootstrap-slider.js"></script> 
    <script> 
    System.config({ 
     paths: { 
     bootstrap-slider: ‘../node_modules/bootstrap-slider/src/js/bootstrap-slider.js’ 
     } 
    }); 
    </script> 
</head> 

<body> 
<app> 
</app> 

<div id="preloader"> 
    <div></div> 
</div> 

<% if (webpackConfig.metadata.isDevServer && webpackConfig.metadata.HMR !== true) { %> 
<!-- Webpack Dev Server reload --> 
<script src="/webpack-dev-server.js"></script> 
<% } %> 

<link 
    href='https://fonts.googleapis.com/css?family=Roboto:400,100,100italic,300,300italic,400italic,500,500italic,700,700italic,900italic,900&subset=latin,greek,greek-ext,vietnamese,cyrillic-ext,latin-ext,cyrillic' 
    rel='stylesheet' type='text/css'> 
</body> 
</html> 

은 그때 끝이 내 웹 사이트의 페이지 중 하나에 자신의 GitHub의에 (jQuery를 wihtout) 예제 코드를 실행 노력했다.

<input 
    type="text" 
    name="somename" 
    data-provide="slider" 
    data-slider-ticks="[1, 2, 3]" 
    data-slider-ticks-labels='["short", "medium", "long"]' 
    data-slider-min="1" 
    data-slider-max="3" 
    data-slider-step="1" 
    data-slider-value="3" 
    data-slider-tooltip="hide" 
> 

나는이 JavaScript 패키지와 다른 패키지를 내 프로젝트에 추가하는 방법을 알고 싶습니다. 어떤 도움이라도 대단히 감사합니다!

+0

이것은 일반적인 질문에 답하지는 않지만, 현재의 경우'../ node_modules' 디렉토리가 브라우저를 통해 외부에서 액세스 할 수 없기 때문일 수 있습니다. 그런데 노드는 개발 시간 의존성에 더 적합하고 배포 된 종속성에 대해서는 더 잘 사용합니다.주요 차이점은 bower가 공유 하위 종속성을 해결하려고 시도하는 반면 npm은 각 종속성에 대해 하위 종속성 세트를로드합니다 (다른 종속성과 독립적입니다). –

+1

또 다른 유용한 팁 : 명령 줄에서 npm을 사용하여 패키지를 설치할 수 있습니다 :'npm install --save bootstrap-slider @^9.2.0'. 그러면 종속성이 설치되고 정의 된 종속성에 추가됩니다. –

+0

의견을 보내 주셔서 감사합니다. – Vanquiza

답변

-2

저는 부트 스트랩 슬라이더를 사용한 적이 없지만 이미 많은 모듈을 설치했습니다. Javascript 콘솔에 오류 메시지가 있습니까?

그렇지 않으면 모듈을 추가 할 수는해야 할 다음과 같은 :

  • 수입 JS 및 CSS 파일 색인에 :

    • (npm install bootstrap-slider 당신이 실행에 의해 수행했거나 같은) NPM 또는 정자를 통해 설치 (다시, 당신은 이미 수행 한) .html 파일 모듈의 설정에
    • 수입 모듈은 app.js, 여기 ngRoute 모듈과 exemple입니다 :

      각 .module ('을 myApp' [ 'ngRoute' ]);

  • +0

    답장을 보내 주셔서 감사합니다! 다음과 같은 오류가 발생하고 이유를 이해할 수 없습니다. "...... someurl ....../node_modules/bootstrap-slider/src/js/bootstrap-slider.js 리소스를로드하지 못했습니다. 서버가 응답했습니다. 404 (찾을 수 없음) 상태 "로 표시됩니다. 경로 위치가 정확해야합니다. 적어도 "node_modules"부터. Btw, Angular 2라는 것을 명심 해주세요. 각도 1이 아닌 문제가 있습니다. – Vanquiza

    +0

    아 ... 죄송합니다. 맞습니다. Angular 1에 대해 생각하고있었습니다. – kawai

    0

    여러분의 프로젝트에 대해 단일 패키지 관리자를 유지하는 것이 더 편하다고 생각합니다. 프런트 엔드 런타임 종속성에 특정 패키지 관리자를 사용하는 것을 선호하는 경우 bower를 더 이상 사용하지 않는 것이 좋습니다. 대신 Yarn을 사용하십시오.

    angle-cli를 사용하여 프로젝트를 설정하는 경우 node_modules의 스타일과 스크립트를 포함 할 수 있습니다. 프로젝트에서 .angular-cli.json 파일을 편집하고 필요에 따라 각도 응용 프로그램에 스타일 또는 스크립트를 추가 할 수 있습니다. 스타일과 스크립트를 추가하기 위해 당신은 app.styles에 추가하고 각각 배열을 app.scripts 수

    { 
        ... 
        "apps": [ 
        { 
         ... 
         "styles": [ 
         "styles.css", 
         "../node_modules/bootstrap/dist/css/bootstrap.min.css" 
         ], 
         "scripts": ["../node_modules/bootstrap/dist/js/bootstrap.min.js"], 
        } 
        ] 
    } 
    

    각도-CLI는 각각 styles.bundle.jsscripts.bundle.js 내부 .angular-cli.json에서 지정한 스타일과 스크립트를 포함 할 것이다. 두 번들 모두 자동으로 Angular 응용 프로그램에 추가됩니다.

    관련 문제