Vue3+TypeScript+Element-Plus+Flask开发记录
1. 跨域
Flask后端解决
/pip install flask-cors
全局配置/
1 | from flask import Flask, request |
使用 @cross_origin
配置单行路由
1 | from flask import Flask, request |
配置参数
前端解决
根目录下添加vue.config.js
1 | module.exports = { |
Nginx 配置跨域
1 | location / { |
2. 实现CSS隐藏滚动条并可以滚动内容
通过CSS隐藏滚动条的方法,不过这个方法不兼容IE,做移动端的可以使用。 那就是自定义滚动条的伪对象选择器::-webkit-scrollbar
chrome 和Safari
1 | .element::-webkit-scrollbar { width: 0 !important } |
IE 10+
1 | .element { -ms-overflow-style: none; } |
Firefox
1 | .element { overflow: -moz-scrollbars-none; } |
3. 修改Element样式
采用定位组件的方法,通过组件外层的class或id定位,使用 >>> 进行样式穿透
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19<div class="dateRange">
<el-date-picker
v-model="dengyouTimeValue"
type="daterange"
@change="dengyouSelectTime"
unlink-panels
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
:picker-options="dengyou_pickerOptions"
></el-date-picker>
</div>
<style scoped>
/* 这里是element时间选择器的公共样式 */
.dateRange >>> .el-date-table td {
padding: 0;
}
</style>使用deep修改样式
1
2
3
4
5
6
7// 修改级联选择框的默认宽度
/deep/ .el-cascader {
width: 100%;
}
::v-deep .el-button{
background: rebeccapurple;
}
4.el-input其中v-model.number 使用修饰符.number可以将输入的数据转换为Number类型
5.Flask-Sqlalchemy 使用 session.bulk_save_objects
后返回主键id
1 | for x in y: |
6. SQLAlchemy 中的 QueuePool 出现 TimeoutError
根本原因是因为该进程对数据库的连接池满了,且等待之前的 session 超时
添加以下代码,自动关闭所有未使用连接。特别是如果你正在使用以下语法Model.query.filter_by
1 |
|