Discussion: Reconsider the route/template structure for donate and thank-you
まだ誰も着手していません。
評価
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 初心者へのやさしさ
- 20/100
- issue の種類
- リファクタリング
- 明瞭さ
- 説明が足りない
- 活発さ
- 停滞
- 技術スタック
- javascript
- 領域
- frontend
調査の方向性
一覧にある project.hbs と project/{index,settings,tasks,donate,thank-you}.hbs の構造を確認し、重複したレイアウトと project-details コンポーネントの joinProject アクションに重点を置きます。Ember の renderTemplate フックのドキュメントを読み、issue にある 3 つのルーティング方法を比較します。重複したレイアウトコードを避け、アクションの明確な所有者を定めるルート/レイアウト構造を選択して文書化すれば完了です。
索引モデルが issue の本文から書いたものです。
説明
Problem
Right now, our route structure is as follows:
project.hbs
project/
index.hbs
settings.hbs
tasks.hbs
donate.hbs
thank-you.
project.hbs is just an {{outlet}}. index, settings and tasks share most of the same layout, but the code needs to be duplicated because donate and thank-you have a completely different layout.
This is somewhat confusing by itself. An additional, unfortunate side-effect is that the index, settings and tasks share the same project-details component, which internally, defines a joinProjectaction. This action can't be handled at route level, because it's used in 3 different routes. Instead, right now, it's handled by the component internally.
I'm really not sure what the best architecture here is, but it doesn't feel right. I think project.hbs should have the outlet for the varying content, but it should also have the default project layout components such as the header, etc. The subroutes should either share the layout or not be subroutes, or we should find a third way to render it.
That means that our options are either:
donateandthank-youshould not be part of the project route structure.donateandthank-youcan be part of the project route structure, but should then share the project layout- we should add a named outlet to our application route. "Layoutless" routes such as
donateandthank-youshould render directly into this named outlet. This gives us an explicit way to specify a route as layoutless. We could use the route'srenderTemplatehook to achieve this behavior
- 主要言語
- JavaScript
- スター
- 120
- フォーク
- 75
- PR マージ指標
- 30日以内にマージされた PR はありません
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
code-corps/code-corps-ember のほかの issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
code-corps/code-corps-ember#1616 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
code-corps/code-corps-ember#1613 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
code-corps/code-corps-ember#1612 ·
-
Difficulty: Medium Skill: ember-cli-page-object
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
code-corps/code-corps-ember#1063 · リアクション 1 件 ·
-
greenkeeper
難易度 3/5 1〜2日 初心者へのやさしさ 25/100
code-corps/code-corps-ember#1765 · コメント 1 件 ·
code-corps/code-corps-ember の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 85/100
mozilla/bedrock#17413 · リアクション 1 件 ·
メンテナーはふだん 2 日以内に返信
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
-
automated issue report
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
lirantal/discoprint#31 ·
メンテナーはふだん 1 日以内に返信
-
難易度 1/5 1時間未満 初心者へのやさしさ 92/100
meshery/meshery.io#3040 ·
メンテナーはふだん 1 日以内に返信
-
Internationalization p5.js 2.0+
難易度 1/5 1時間未満 初心者へのやさしさ 95/100
processing/p5.js#9231 ·
メンテナーはふだん 2 日以内に返信