我有一个 Flask 应用程序,它也通过从/build我运行时生成的文件夹中提供文件来为 React 前端提供服务npm run build。
我的目录结构:
.
|-client/
| |build/
| |static/
|
|-server/
| |main.py
Run Code Online (Sandbox Code Playgroud)
为了将我的应用程序部署到 Heroku,我必须...
这有效,但这绝对是一种痛苦。当我们创建 PR 时,它会在 Github 中产生巨大的差异。
我想知道,是否可以npm run build在 Heroku 管道中运行?我认为 Procfile 是要走的路。我已经尝试了一些事情,比如添加
npm: cd client && npm run build
web: flask db upgrade; gunicorn wsgi:app
Run Code Online (Sandbox Code Playgroud)
无济于事。
场景:我有一个无序的列表项列表.在每个列表项中是一个span,每个span中都有一个img标记.所以我的html结构看起来像这样.
<ul class="slider-controls">
<li data-preview1="./images/1.1.jpeg" data-preview2="./images/1.2.jpeg"><span><img src="./images/color1.jpeg"></img></span></li>
<li data-preview1="./images/2.1.jpeg" data-preview2="./images/2.2.jpeg"><span><img src="./images/color2.jpeg"></img></span></li>
<li data-preview1="./images/3.1.jpeg" data-preview2="./images/3.2.jpeg"><span><img src="./images/color3.jpeg"></img></span></li>
</ul>
Run Code Online (Sandbox Code Playgroud)
img标签只是很小的方形颜色样本,并且跨度被设计成圆形,所以你拥有的基本上是三个彩色点的颜色选择器供用户点击.
当用户点击li时,我正在使用javascript来获取数据预览,以便我可以使用该信息来更改图片.如果用户在圆圈外略微点击,这可以很好地工作.但是,如果他们在圈内点击,他们最终会点击img标签.但我需要的数据是li标签中的两个父节点!
所以我写了一个递归函数来解决这个问题.
function findUpTag(el, tag) {
console.log(el.tagName, tag);
if (el.tagName === tag) {
console.log("success!", el);
return el;
} else {
findUpTag(el.parentNode, tag);
}
}
Run Code Online (Sandbox Code Playgroud)
我这样用它 findUpTag(el, "LI");
我知道我的递归搜索正在工作,因为当当前元素==="LI"时,我总是得到console.log("success")输出.
但是,单击图像标记时的返回值始终未定义!即使我的方法找到了LI!
我究竟做错了什么?