从CDN导入Materializecss并获取select下拉菜单以在ReactJS中工作



我有一个ReactJS项目,其中包括来自其CDN的物化:

<head>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/css/materialize.min.css">
</head>
<body>
<script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/js/materialize.min.js"></script>
</body>

我的问题是,我想初始化一个select元素。我搜索过类似的问题,都是从node_modules导入M函数,然后在componentDidMount()中调用它。

我想避开npm install materialize-css@next,只包括CDN的包裹。

我尝试了window.M.AutoInit(),没有出现错误,但它甚至没有创建下拉列表。如何调用M.AutoInit()

我想我找到了问题的答案。

在构造函数上,您必须添加this.M = window.M:

constructor() {
super();
...
this.M = window.M;
...
}

所以在那之后使用this.M.AutoInit()外部构造函数应该可以工作了!

最新更新