twitter-bootstrap – 使用Bootstrap 3.0与Browserify

我试图使用Bootstrap 3.0与browserify 5.9.1,但得到以下错误
Uncaught ReferenceError: jQuery is not defined

什么是正确的方法这样做?

这是我的package.json的相关部分:

{
  ...
  "scripts": {
    "bundle": "browserify main.js -o bundle.js --debug --list"
  },"dependencies": {
    "backbone": "~1.1.x","jquery": "~2.1.x","underscore": "~1.6.x"
  },"devDependencies": {
    "browserify": "^5.9.1",...
  },...
}

需要引导的模块如下所示:

var $ = require('jquery');
var Backbone = require('backbone');
Backbone.$ = $;
require('../../../../bower_components/bootstrap-sass-official/assets/javascripts/bootstrap');

我不喜欢的两件事是:

Bootstrap使用Bower下载。 AFAIK没有办法使用npm。这使得路径非常长而尴尬。有没有办法让Bootstrap npm友好?
Bootstrap不是这个模块的直接依赖,它是一种jQuery插件。当它被加载时,它只是在文档上创建一些事件处理程序来处理来自Bootstarp的小部件的事件。我必须要求这些事件处理程序被创建。这是正确的方法吗?

当然毕竟这样,我还是得到“jQuery没有定义”的错误。我拉我的头发试图让这个工作。请帮忙!

美国早些时候,我在图片中安装了grunt-browserify插件,并很快意识到它使用的是browserify 4.x版,没有源地图功能。这使得它更难调试,所以我很快把它从图片中,直接从npm浏览。

解决方法

当我在browserify中使用引导时,这对我有用:
window.$ = window.jQuery = require('jquery')
var Backbone = require('backbone');
Backbone.$ = $;
require('../../../../bower_components/bootstrap-sass-official/assets/javascripts/bootstrap');

相关文章

Bootstrip HTML 查询搜索常用格式模版 <form class=&...
如何在按钮上加红色数字 您可以使用Bootstrap的badge组件来在...
要让两个按钮左右排列,你可以使用 Bootstrap 的网格系统将它...
是的,可以将status设置为布尔类型,这样可以在前端使用复选...
前端工程师一般用的是Bootstrap的框架而不是样式,样式一般自...
起步导入:<linkrel="stylesheet"href="b...