【发布时间】:2016-08-05 19:56:44
【问题描述】:
也许是一个非常菜鸟的 webpack 问题,但我来了:
想知道(因为我真的没有找到任何直接的答案)是否有人可以给我一个关于如何让bootstrap material design 工作的提示?我得到了 css 的东西,但没有涟漪.js 的东西......
我的 webpack 设置,不错:
...
plugins: [ new webpack.ProvidePlugin({ $: "jquery", jQuery: "jquery" }) ],
module: {
loaders: [
{ test: /\.js?$/, exclude: /(node_modules|bower_components)/, loader: 'babel' },
{ test: /\.css$/, loader: 'style-loader!css-loader' },
{ test: /\.eot(\?v=\d+\.\d+\.\d+)?$/, loader: "file" },
{ test: /\.(woff|woff2)$/, loader:"url?prefix=font/&limit=5000" },
{ test: /\.ttf(\?v=\d+\.\d+\.\d+)?$/, loader: "url?limit=10000&mimetype=application/octet-stream" },
{ test: /\.svg(\?v=\d+\.\d+\.\d+)?$/, loader: "url?limit=10000&mimetype=image/svg+xml" }
]
}
...
在我的 react 的 index.js 中,这就是一切的开始:
...
import Bootstrap from 'bootstrap/dist/css/bootstrap.css'
require('bootstrap-material-design/dist/css/bootstrap-material-design.css')
require('bootstrap-material-design/dist/css/ripples.min.css')
...
如何让 material.js 和ipples.js 工作?
我没有收到控制台错误或 webpack 错误,但没有显示该死的涟漪!我猜有一种智能的 webpack 方法可以让这一切运行起来,还是我需要在 index.js 中明确要求 .js(这不起作用)?
提前致谢,
hanto899
更新: 如果我的 index.js 文件中需要以下内容:
require('bootstrap/dist/css/bootstrap.css')
require('bootstrap-material-design/dist/css/bootstrap-material-design.min.css')
require('bootstrap-material-design/dist/css/ripples.min.css')
require('bootstrap')
var material = require('bootstrap-material-design/dist/js/material.js') // not sure if the "var material =" is necessary here...
var ripples = require('bootstrap-material-design/dist/js/ripples.js') // not sure if the "var material =" is necessary here...
let $ = require('jquery')
$.material.init()
我没有收到任何错误,但波纹不起作用。但是...如果我导航到另一个页面,并在该页面上添加:
let $ = require('jquery')
$.material.init()
webpack 热重载,然后我得到了涟漪工作。但是,如果我刷新页面,我会得到:
Uncaught TypeError: Cannot read property 'init' of undefined
....
【问题讨论】:
-
你可以通过 webpack 在你的应用中获取它们。
-
你解决了吗?
-
我已经解决并更新了我的答案请看here is my testes repo试试吧!
标签: reactjs twitter-bootstrap-3 webpack material-design redux