传统的 Web 开发常需在 Python 后端与 JS 前端间频繁切换。
而 JustPy 打破了这道墙,它允许我们完全使用 Python 操作 Vue 组件,直接在后端定义前端的交互逻辑,无需编写一行 JavaScript,非常适合追求高效开发的极客们。
🛠️ 实战:搭建互动极简页面
环境准备与启动首先通过 pip 安装模块。JustPy 基于 Starlette 和 Vue,安装非常简洁。
# 终端执行安装指令pip install justpy
运行结果:
Successfully installed justpy-0.13
构建核心逻辑下面的代码展示了如何创建一个带有按钮计数的页面。请注意,点击逻辑完全写在 Python 中。
import justpy as jpdefclick_demo(request): wp = jp.WebPage()# 定义计数显示区域 count_div = jp.Div(text="当前点击数:0", a=wp, classes="text-h5")defincrement(self, msg):# 读取并更新文本中的数字 old_num = int(count_div.text.split(":")[1]) count_div.text = f"当前点击数:{old_num + 1}"# 绑定按钮点击事件 jp.Button(text="点我 +1", a=wp, click=increment, classes="bg-blue-500 text-white p-2")return wpjp.justpy(click_demo)
页面表现:
初始: 当前点击数:0点击后: 当前点击数:1点击后: 当前点击数:2
⚖️ 优势对比与适用场景
相比于传统的 Django/Flask + JS 模式,JustPy 的学习成本极低,特别适合算法工程师快速搭建原型。
其劣势在于项目生态相对年轻,目前社区已进入维护状态,对于复杂的高并发场景,建议还是回归原生 JS 或其他成熟框架。
✨ 结语
JustPy 提供了一种“全 Python”的奇妙体验,虽然它可能不适合超大型项目,但在内部工具或数据看板开发中绝对是一把利器。
你有尝试过用纯 Python 写前端吗?欢迎在评论区分享你的“偷懒”心得!