Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从CDN导入Materializecss并让select下拉菜单在ReactJS中工作?_Javascript_Reactjs_Select_Dropdown_Materialize - Fatal编程技术网

Javascript 从CDN导入Materializecss并让select下拉菜单在ReactJS中工作?

Javascript 从CDN导入Materializecss并让select下拉菜单在ReactJS中工作?,javascript,reactjs,select,dropdown,materialize,Javascript,Reactjs,Select,Dropdown,Materialize,我有一个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/material

我有一个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\u modules
导入
M
函数,然后在
componentDidMount()
中调用它

我想避免npm安装物化-css@next,只需包含
CDN
中的包即可


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

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

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

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

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

为什么要避免安装npm?我只是想检查是否有一种方法可以从CDN附带的库中访问对象。但是React或node的方式是,您不认为将模块放在package.json中会更好吗@GermaVinsmoke,这确实是一个更好的方法,这是我的最终实现,但我想知道是否还有另一种方法,CDN。我会为你检查是否可能,直到那时你可以检查这个网站的物化反应-我尝试了,但我无法得到M,这真的很好+1.