使用Flask(JS和Python)开发时的Import语句

2024-06-16 11:33:17 发布

您现在位置:Python中文网/ 问答频道 /正文

我很难确定为什么我不能在一个简单的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比较陌生,所以我不知道如何准确地搜索这个问题,谢谢你的帮助。在


Tags: 文件tosrcappflaskindexhtml方式
1条回答
网友
1楼 · 发布于 2024-06-16 11:33:17

我放弃了使用styled-components,转而使用JS库中的另一个CSS,Radium。似乎(如果我错了,请纠正我)import语句只适用于本地文件(因此我需要Radium.jslib的本地副本才能使其工作),因此CDN已经“包括”了一些内容(例如,使用CDN for React.js已经在定义的所有java脚本中提供了React“变量”,对PropTypes也一样,使用prop-types的CDN。只要包含镭CDN,我就可以很容易地使用Radium“变量”,然而,即使包含了styled-componentsCDN,也不可能使用styled变量。我想这算是一个解决办法!在

相关问题 更多 >