我需要在我的vue应用程序上使用bootstrap 3。我做了以下事情:
vue init webpack-simple
npm install jquery bootstrap
之后我添加到webpack.config.js
module.exports = {
...
plugins: [
new webpack.ProvidePlugin({
$: "jquery",
jQuery: "jquery"
}),
]
}
并添加到src / main.js
window.$ = window.jQuery = require('jquery')
import 'bootstrap'
并在浏览器中出错:
未捕获的ReferenceError:未定义jQuery
我如何解决这个问题?
更新:
我喜欢说@Sandwell,但结果没有bootstrap.css。我将行添加到src / main.js
import Bootstrap from 'bootstrap/dist/css/bootstrap.css'
并得到了webpack编译错误:
./ node_modules /引导/ DIST /字体/ glyphicons-半身-regular.ttf 模块解析失败:意外字符''(1:0) 您可能需要适当的加载程序来处理此文件类型。 (此二进制文件省略了源代码) @ ./node_modules/css-loader!./node_modules/bootstrap/dist/css/bootstrap.css 6:4790-4842 @ ./node_modules/bootstrap/dist/css/bootstrap.css @ ./src/main.js @ multi(webpack)-dev-server / client?http://localhost:8080 webpack / hot / dev-server ./src/main.js
我在webpack.config.js module.rules中有加载程序:
{
test: /\.(png|jpg|gif|svg|ttf)$/,
loader: 'file-loader',
options: {
name: '[name].[ext]?[hash]'
}
}
答案 0 :(得分:1)
对于webpack 2
我为我的libs做了一个供应商包。它应该这样工作。
module.exports = {
entry: {
app: 'path/to/initapp.js',
vendor: ['jQuery', 'Bootstrap']
}
output: {
path: rootPath + 'public/',
filename: 'js/[name].js'
},
plugins: [
new webpack.optimize.CommonsChunkPlugin({
names: ['vendor']
})
]
}
然后jQuery应该在vendor.js包中 不要忘记在initapp.js中导入它
import 'bootstrap';
import jQuery from 'jQuery'
window.jQuery = jQuery
您应该查看此doc了解详情