Syntax similar to JSX
还没有人认领这个 Issue。
评估
- 难度
- 5/5
- 预计耗时
- 一周以上
- 新手友好度
- 25/100
- Issue 类型
- 功能
- 描述清晰度
- 需要澄清
- 活跃度
- 停滞
- 技术栈
- javascript, python, react
调研方向
Start by reading the linked tagstr transpiler issue and the example implementation in tagstr/examples/htmldom.py. Clarify whether the work targets the interim transpiler, the tag string PEP, or both, then define the html tag function's expected behavior from the JSX examples. Done means an agreed implementation path with working transpiler support and an html tag usable by the shown example.
由索引模型根据 Issue 内容生成。
描述
Current Situation
ReactJS has a method of HTML templating called JSX. We currently do not have an equivalent. We should create a Python-based JSX equivalent that operates similarly to how it is used in ReactJS (Javascript).
The key difference here is we will not use a dedicated file extension (such as .psx) in order to not break existing toolchains. Instead, we will rely on the tag string PEP that adds template literals to Python. Here is an example of the tag string syntax:
from reactpy import html
button_style = {"font_style": "bold"}
button_text = "Click me!"
view = html(t"<button on_click={lambda event: ...} style={button_text}>{button_text}</button>")
While we wait for the tag string PEP to be merged, we could potentially use an interim transpiler to use a similar syntax. The interim transpiler syntax would look something like this:
from reactpy import html
button_style = {"font_style": "bold"}
button_text = "Click me!"
view = html @ f"<button on_click={lambda event: ...} style={button_text}>{button_text}</button>"
Proposed Actions
Aid in the development of this proposed transpiler and then develop an html tag function. An initial implementation of an html tag can be found here.
News: There is now a VSCode Extension to add syntax highlighting for inline HTML. (and a second one)
- 主要语言
- Python
- 星标
- 8.1k
- 派生
- 332
- PR 合并指标
- 30 天内没有已合并 PR
贡献指南
这个仓库没有索引到贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
reactive-python/reactpy 的其他 Issue
-
priority-3-low type-docs
难度 2/5 1-3 小时 新手友好度 65/100
reactive-python/reactpy#1034 ·
-
priority-2-moderate type-revision
难度 5/5 一周以上 新手友好度 25/100
reactive-python/reactpy#1319 ·
-
priority-1-high
难度 5/5 一周以上 新手友好度 25/100
reactive-python/reactpy#1277 ·
-
priority-3-low
难度 5/5 一周以上 新手友好度 35/100
reactive-python/reactpy#1273 · 1 个 reaction ·
-
priority-2-moderate
难度 5/5 一周以上 新手友好度 30/100
reactive-python/reactpy#1272 · 2 个 reaction ·
查看 reactive-python/reactpy 的全部 Issue
相似的 Issue
-
bug
难度 2/5 1-3 小时 新手友好度 90/100
learningequality/ricecooker#747 ·
-
难度 2/5 1-3 小时 新手友好度 68/100
BSData/horus-heresy-3rd-edition#3171 ·
-
enhancement
难度 2/5 1-3 小时 新手友好度 72/100
-
难度 2/5 1-3 小时 新手友好度 76/100
run-llama/llama_index#23199 ·
-
难度 2/5 1-3 小时 新手友好度 84/100
KhronosGroup/glTF-Blender-IO#2769 ·