bbcmicrobit / bbcmicrobit/PythonEditor
blocks: how to handle 'undocked' blocks
- Ngôn ngữ chính
- JavaScript
- Star
- 201
- Fork
- 126
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Mô tả
(this is a complex one that I think needs some discussion - opening this issue as a place for that)
At the moment in blocks, as far as I can see, any block on the canvas will cause code to be generated and likely run. There aren't 'hats' or 'events', not even an 'on start' one.
This can cause a few possible issues.
For one, it's fundamentally different to scratch

In this case, the 'hmm' will never happen.
The *difference* is not in itself a reason to change, but In the past we've seen kids use 'undocking' blocks as a way to 'comment them out' (IE you build a complex set of blocks and then 'undock' them in order to stop them running. This is one good reason to think about how things work.
(it's also different from PXT, too)
Secondly, it can create some confusing things on canvas if your project has grown and then shrunk again.
For example, someone who knows how to code will easily spot the issue here:

...but for someone who is only focused on the blocks this could be really confusing. This is a slightly artificial example, but I think the problem in general is real, especially given the lack of clear notification that things are not currently visible, etc. (see in part #42 )
Note that PXT removed 'hats' early on in development and decided to add them back. There's a good discussion about that here:
https://github.com/Microsoft/pxt/issues/849
Hướng dẫn đóng góp
Hướng nghiên cứu
Bắt đầu bằng cách đọc phần thảo luận trong issue này, đặc biệt là các ví dụ về các block không được gắn kết, sau đó xem lại issue #42 và PXT issue #849 được tham chiếu. Issue này cần có hành vi được thống nhất cho các block không được gắn kết trước khi có thể bắt đầu triển khai; tiêu chí hoàn thành chưa được định nghĩa ở đây.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- javascript
- Lĩnh vực
- frontend
- Loại issue
- Tính năng
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Cần làm rõ
- Mức phù hợp với người mới
- 25/100