我很难确定为什么我不能在一个简单的React Flask项目中轻松地导入JS中的CSS。为了简单起见,我没有使用Webpack、Babel或NPM(我想先了解一下以简单的方式反应)。文件结构如下:
+-- main.py (to start Flask)
+-- templates
+-- index.html (default html to load at "/")
+-- static
+-- App.js (Dummy simple React.Component inside)
简而言之,我使用CDN将styled-components
包含在index.html
中,如下所示:
<script src="https://cdnjs.cloudflare.com/ajax/libs/styled-components/3.3.2/styled-components.min.js"></script>
Reactjs和jQuery也以这种方式包含在内。然后我将虚拟组件包括为:
<script src = {{url_for('static', filename = 'App.js')}} type = "module"></script>
到目前为止,一切正常(也就是说,默认的构件加载和工作)。当我试图使用styled-components
时,问题就来了:在这个App.js
文件中,如果我写import styled from 'styled-components'
网页就不会加载,并且控制台中没有错误输出来帮助我找出问题所在。这不是ES6问题,因为我使用的是Edge 16和Firefox Quantum 60,而且import/export语句与自定义组件完美配合。控制台上没有错误输出,这让我很烦恼。我对JS比较陌生,所以我不知道如何准确地搜索这个问题,谢谢你的帮助。在
我放弃了使用
styled-components
,转而使用JS库中的另一个CSS,Radium
。似乎(如果我错了,请纠正我)import语句只适用于本地文件(因此我需要Radium.js
lib的本地副本才能使其工作),因此CDN已经“包括”了一些内容(例如,使用CDN forReact.js
已经在定义的所有java脚本中提供了React
“变量”,对PropTypes
也一样,使用prop-types
的CDN。只要包含镭CDN,我就可以很容易地使用Radium
“变量”,然而,即使包含了styled-components
CDN,也不可能使用styled
变量。我想这算是一个解决办法!在相关问题 更多 >
编程相关推荐