โครงสร้างแอป Vue

ขณะนี้ฉันกำลังพยายามสร้าง webapp แรกโดยใช้ vue.js

ตอนนี้สอนแบบเจาะลึกมา 2 วันแล้ว ฉันยังไม่แน่ใจ 100% ว่าจะจัดโครงสร้างแอปพลิเคชันพื้นฐานอย่างไร การใช้ vue-cli และ webpack ได้สร้างโครงสร้างที่ดีอยู่แล้ว รวมถึงโฟลเดอร์ /src ที่มีส่วนประกอบและโฟลเดอร์ /router สำหรับการกำหนดเส้นทาง

ตอนนี้แผนของฉันคือการสร้างแอป ToDo ฉันต้องการสลับระหว่าง [show todos] และ [add todo] แบบไดนามิก ซึ่งเป็นเพียงแบบฟอร์มที่มีปุ่มส่ง ฉันทำสำเร็จแล้วโดยใช้มันโดยไม่มีส่วนประกอบและ cli

โครงสร้างของฉันจะเป็น:

App.vue -› ปุ่มที่มี router-link สองปุ่มไปยังส่วนประกอบ/ShowTodos.vue & ส่วนประกอบ/AddTodos.vue

components/ShowTodos.vue -› ตารางรวมถึงรายการสิ่งที่ต้องทำ

components/AddTodos.vue -› แบบฟอร์มพร้อมปุ่มส่ง

ตอนนี้ส่วนการกำหนดเส้นทางใช้งานได้ ฉันสามารถสลับระหว่างส่วนประกอบทั้งสองนี้ได้

ตอนนี้ 2 คำถาม:

  1. ฉันจะส่งข้อมูลจากแบบฟอร์มในองค์ประกอบ AddTodos ไปยัง Array ในองค์ประกอบ ShowTodos เพื่อวนซ้ำที่นั่นได้อย่างไร

  2. นี่เป็นวิธีที่เหมาะสมในการจัดโครงสร้างแอป vue หรือไม่ และหากไม่ใช่ ฉันจะปรับปรุงได้อย่างไร

    ขอบคุณมาก.

นี่เป็นครั้งแรกสำหรับฉันที่ใช้ JS Framework ที่ใช้ส่วนประกอบ ดังนั้นจึงค่อนข้างยากที่จะปฏิบัติตาม

ป้อนคำอธิบายรูปภาพที่นี่


person miaue    schedule 20.08.2017    source แหล่งที่มา


คำตอบ (3)


ในการจัดโครงสร้างแอปพลิเคชัน vuejs ของคุณ สิ่งนี้จะมีประโยชน์

app/
   moduleA/
      components/
      index.js
      routes.js
   moduleB/
      components/
      index.js
      routes.js
   index.js
   routers.js
   main.vue
   router/
   components/ -> shared
   main.js

// app/routes.js
import { routes as moduleA } from './moduleA'
import { routes as moduleB } from './moduleB'
export default [ ...moduleA, ...moduleB ]

// app/moduleA/index.js
export { default as routes } from './routes'

// app/moduleB/index.js
export { default as routes } from './routes'

// app/index.js
export { default as routes } from './routes

'

person Husni Abdul Nazer    schedule 20.08.2017

เกี่ยวกับคำถามที่สอง ฉันได้ค้นคว้าข้อมูลบางอย่าง และนั่นคือสิ่งที่ฉันแนะนำ:

.
├── app.css
├── App.vue
├── assets
│   └── ...
├── components
│   └── ...
├── main.js
├── mixins
│   └── ...
├── router
│   └── index.js
├── store
│   ├── index.js
│   ├── modules
│   │   └── ...
│   └── mutation-types.js
├── translations
│   └── index.js
├── utils
│   └── ...
└── views
    └── ...

อ่านเพิ่มเติมที่นี่: https://medium.com/@sandoche/how-to-structure-a-vue-js-project-eabe75161882

person Sandoche    schedule 12.06.2018

ฉันขอแนะนำ boilerplate นี้ได้เลย มีโครงสร้างที่ดีมากและตอนนี้ผมใช้มันในทุกโครงการ

/components
/layouts
/mixins
/pages
/routes
/services
/store
/transformers

เขายังอธิบายโครงสร้างได้ดีมาก https://github.com/petervmeijgaard/vue-2.0-boilerplate#structure

person Berni    schedule 21.08.2017