Vue.jsの設計方針
概要
自分自身のナレッジのため、Vue.jsの設計方針をまとめました。
環境
Vue.js 2系
TypeScript
Vuex
Vue Router
ディレクトリ構成
Vue.js 2系
TypeScript
Vuex
Vue Router
Atomic Designからtemplateを省いて、崩しています。
他ディレクトリもできるだけシンプルな責任分担にしています。
いろいろな用途に汎用性を持たせるのと、
コーディングのルール付けくらいになるレベルまでの定義を意識しました。
(ガチガチに固めるとそれはそれで実装効率を下げると考えました)
src
|--assets
|--components
| |--atoms
| |--molecules
| |--organisms
| |--pages
|--constants
|--models
|--router
|--service
|--store
| |--modules
|--utils
|--views
各ディレクトリの役割
ディレクトリごとに責務を分離し、
- 何がどこにあるか
- 改修時どこを編集すればいいのか
- 機能追加時どこに何を追加すればいいのか
が分かりやすいよう定義することを意識しました。
ディレクトリ名 | 役割 |
---|---|
assets | 静的ファイル・汎用CSS |
components/atoms | これ以上分解できない最小単位の汎用コンポーネント |
components/molecules | 一つの汎用的な部品を構成するコンポーネント |
components/organisms | 一つの機能を構成するコンポーネント |
components/pages | viewsから呼び出され、organismsを用いてページを構成するコンポーネント |
constants | 定数定義 |
models | データの型定義 |
router | Vue Routerの定義 |
service | APIの呼び出しやLocalStorageの使用 |
store/modules | Vuexストアの定義 |
utils | 汎用的なメソッド |
views | ページ遷移のために使用する、ページ単位のコンポーネント |
リポジトリ
上記を定義した個人学習用リポジトリです。
改修の余地はissueに纏めています。
https://github.com/RinyuDrvo/language_app
Author And Source
この問題について(Vue.jsの設計方針), 我々は、より多くの情報をここで見つけました https://qiita.com/RINYU_DRVO/items/9870ff616f168ccefafb著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .