[英]React not rendering css styles
我试图在我的应用程序中添加一个下拉菜单,然后选择Selectize( https://github.com/furqanZafar/react-selectize )。 但是,它似乎未正确显示在页面上。 这是看起来像 ,似乎缺少css样式。 我是React的新秀,所以如果这不是一个明智的问题,请多多包涵。 提前致谢!
webpack.config.js
var path = require("path")
var webpack = require('webpack')
var BundleTracker = require('webpack-bundle-tracker')
module.exports = {
context: __dirname,
entry: './assets/js/index',
output: {
path: path.resolve('./assets/bundles/'),
filename: "[name]-[hash].js",
},
plugins: [
new BundleTracker({filename: './webpack-stats.json'}),
],
module: {
loaders: [
{test: /\.jsx?$/, exclude: /node_modules/, loader: 'babel-loader', query: { presets:['react'] }},
{test: /\.css$/, loader: 'style-loader'},
{test: /\.css$/, loader: 'css-loader', query: { modules: true, localIdentName: '[name]__[local]'}},
],
},
resolve: {
modulesDirectories: ['node_modules', 'bower_components'],
extensions: ['', '.js', '.jsx']
},
}
Dropdown.js
import {ReactSelectize, SimpleSelect, MultiSelect} from 'react-selectize';
import React from 'react';
import 'react-selectize/themes/index.css'
export default class Dropdown extends React.Component {
render() {
return (
<SimpleSelect placeholder="Select a fruit" onValueChange={value => alert(value)}>
<option value = "apple">apple</option>
<option value = "mango">mango</option>
<option value = "orange">orange</option>
<option value = "banana">banana</option>
</SimpleSelect>
)
}
}
index.js
import Dropdown from "./components/dropdown"
var React = require('react')
var ReactDOM = require('react-dom')
ReactDOM.render(<Dropdown />, document.getElementById('container'))
控制台中出现以下错误:
Uncaught Error: addComponentAsRefTo(...): Only a ReactOwner can have
refs. You might be adding a ref to a component that was not created
inside a component's `render` method, or you have multiple copies of
React loaded
对于许多React组件,相关的CSS包含在npm模块中,但是由于它们不是JS,因此无法通过import
加载。 通常,必须分别加载样式。
文档说:
要包括默认样式,请在您的>手写笔文件中添加以下导入语句:@import'node_modules / react-selectize / themes / index.css'
包括在内吗? 如果您不使用Stylus,则只需抓住CSS并将其粘贴到主CSS文件中即可。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.