나는 팝 오버, 툴팁, 조동사처럼, 부트 스트랩의의 jQuery 플러그인을 호출하려고 붙어있어, ...ES6
나는 웹팩을 사용하고 있는데이 내 ES6의 자바 스크립트입니다 :
import $ from 'jquery';
//import Bootstrap from 'bootstrap-sass';
//import Bootstrap from 'bootstrap-loader';
import Bootstrap from '../vendor/bootstrap.min.js';
class Test {
constructor() {
$('[data-toggle="tooltip"]').tooltip({ html: true });
}
}
나는 NPM과 부트 스트랩을 설치하려고했지만, 그 후 나는 내가 가져올했다 하나의 노드 모듈 (당신이 볼 수있는 것처럼이의 수입에 줄을 주석) 확실하지 않았다. 그래서 나는 직접 bootstrap.min.js
을 가져 오는 것으로 생각했습니다.
사실은 내가 여전히 내 자바 스크립트가 웹팩에서 생성되는 내 app.js
에서이 같은 (내가 팝 오버/조동사/툴팁 시도 독립적 경우) 오류를 가지고있다 :
Uncaught TypeError: (0 , _jquery2.default)(...).tooltip is not a function
내가 말처럼, 나는 여기 붙어있다.
마지막 것은은 부트 스트랩 CSS이 올바르게 덕분에 작동합니다
gulp.task('bootstrap-fonts', function() {
return gulp.src('node_modules/bootstrap-sass/assets/fonts/bootstrap/*')
.pipe(gulp.dest('./app/assets/fonts/bootstrap'));
});
gulp.task('dev', ['css', 'bootstrap-fonts', 'browser-sync', 'webpack'], function() {
gulp.watch('src/scss/**/*.scss', ['css']);
gulp.watch('src/js/**/*.js', ['webpack']);
gulp.watch('app/*.html', ['bs-reload']);
});
'jquery'에서 'import $'로 충분하지 않습니까? – luke88
아니, 지금 현재 파일 (현재 모듈) 안에 'jquery'를 가져 왔으므로이 파일 만 '지금' 'jquery'를 "알"있습니다. 그러나 부트 스트랩 자신이 전역 jQuery 객체를 사용하고 있습니다. 그리고 이것은 부트 스트랩이 jQuery 객체에 대해 알 수 있도록 webpack의 방법입니다. – Jumpa
@Jumpa는 다른 라이브러리에서도 마찬가지입니다. 'library.js'를 필요로하는 두 개의 컴포넌트가 있다고 가정 해 봅시다. 글로벌 범위에 두는 것이 두 번 (각 구성 요소에 한 번) 가져 오는 것보다 좋은 방법이라고 생각하십니까? – JohnnyQ