Rumah > hujung hadapan web > View.js > teks badan

Pembangunan aplikasi surat berita berdasarkan Vue: Penyegerakan data masa nyata menggunakan Firebase Cloud Firestore

王林
Lepaskan: 2023-09-13 14:40:44
asal
958 orang telah melayarinya

基于Vue的时事通讯应用开发:利用Firebase Cloud Firestore实现实时数据同步

Pembangunan aplikasi surat berita berasaskan Vue: Penyegerakan data masa nyata menggunakan Firebase Cloud Firestore memerlukan contoh kod khusus

Pengenalan:
Dengan perkembangan pesat Internet, orang ramai semakin memberi perhatian dan permintaan untuk hal ehwal semasa . Hari ini, ramai orang ingin dapat mengikuti perkembangan terkini dengan berita terkini dan topik hangat pada bila-bila masa dan di mana sahaja. Untuk memenuhi keperluan ini, kami boleh membangunkan aplikasi surat berita berasaskan Vue dan menggunakan Firebase Cloud Firestore untuk mencapai penyegerakan data masa nyata. Artikel ini akan memperkenalkan anda kepada proses pembangunan berdasarkan Vue dan Firebase serta memberikan contoh kod terperinci.

1. Penyediaan:

  1. Pasang Node.js dan Vue CLI.
  2. Buat projek Vue baharu, namakannya "aplikasi berita", dan masukkan direktori projek.

2 Buat projek Firebase:

  1. Masukkan tapak web rasmi Firebase (https://firebase.google.com/) dan log masuk dengan akaun Google anda.
  2. Klik "Bermula" untuk mencipta projek baharu.
  3. Dalam konsol projek, klik "Tambah Aplikasi" dan pilih "Web".
  4. Masukkan nama apl, seperti "NewsApp", dan kemudian klik "Daftar Apl".
  5. Dalam kod konfigurasi di bawah, salin kandungan objek "firebaseConfig".

3. Pasang kebergantungan Firebase:

  1. Buka terminal dan masukkan direktori projek "news-app".
  2. Jalankan arahan berikut untuk memasang kebergantungan berkaitan Firebase:

    npm install firebase
    Salin selepas log masuk
  3. Buat folder baharu dalam direktori src dan namakannya "firebase".
  4. Buat fail baharu dalam folder "firebase" dan namakannya "config.js".
  5. Dalam fail "config.js", tampalkan objek "firebaseConfig" yang disalin sebelum dan eksportnya:

    export default {
      // 粘贴firebaseConfig对象
    }
    Salin selepas log masuk

4. Mulakan Firebase:

  1. Import Firebase"rebase" dan "firebase"

  2. Mulakan Firebase:

    import firebase from 'firebase/app'
    import 'firebase/firestore'
    import firebaseConfig from './firebase/config'
    Salin selepas log masuk

  3. Buat contoh Firebase Firestore:

    firebase.initializeApp(firebaseConfig)
    Salin selepas log masuk

  4. Tambahkan contoh Firestore pada prototaip Vue untuk akses ke seluruh apl:

    rreee halaman berita:

:

Buat fail baharu dalam direktori "src/views" dan namakannya "NewsList.vue".
  1. Dalam fail "NewsList.vue", tulis kod templat berikut:
  2. const db = firebase.firestore()
    Salin selepas log masuk

  3. Dalam fail "NewsList.vue", tulis kod skrip berikut:
  4. Vue.prototype.$db = db
    Salin selepas log masuk

  5. 6. Buat halaman tambahan :

Buat fail baharu dalam direktori "src/views" dan namakannya "AddNews.vue".
  1. Dalam fail "AddNews.vue", tulis kod templat berikut:
  2. <template>
      <div>
     <h1>时事新闻</h1>
     <ul>
       <li v-for="news in newsList" :key="news.id">
         {{ news.title }}
       </li>
     </ul>
      </div>
    </template>
    Salin selepas log masuk

  3. Dalam fail "AddNews.vue", tulis kod skrip berikut:
  4. <script>
    export default {
      data() {
     return {
       newsList: []
     }
      },
      mounted() {
     this.getNewsList()
      },
      methods: {
     getNewsList() {
       this.$db.collection('news')
         .orderBy('timestamp', 'desc')
         .onSnapshot(snapshot => {
           this.newsList = snapshot.docs.map(doc => {
             const data = doc.data()
             return {
               id: doc.id,
               title: data.title
             }
           })
         })
     }
      }
    }
    </script>
    Salin selepas log masuk

  5. 7. Konfigurasikan routing:

Dalam fail "src/router/index.js", import "NewsList.vue" dan "AddNews.vue":
    <template>
      <div>
     <h1>添加新闻</h1>
     <form @submit.prevent="addNews">
       <label for="title">标题:</label>
       <input type="text" id="title" v-model="title" required>
       <button type="submit">提交</button>
     </form>
      </div>
    </template>
    Salin selepas log masuk
  1. Dalam tatasusunan "laluan", buat dua objek laluan:
  2. <script>
    export default {
      data() {
     return {
       title: ''
     }
      },
      methods: {
     addNews() {
       this.$db.collection('news').add({
         title: this.title,
         timestamp: new Date()
       })
       this.title = ''
     }
      }
    }
    </script>
    Salin selepas log masuk
  3. 八. Cipta komponen halaman utama:

Buat fail baharu dalam direktori "src/views" dan namakannya "Home.vue".
  1. Dalam fail "Home.vue", tulis kod templat berikut:
  2. import NewsList from '@/views/NewsList.vue'
    import AddNews from '@/views/AddNews.vue'
    Salin selepas log masuk

  3. 9 Kemas kini komponen Apl:

    Dalam fail "src/App.vue", gantikan kod templat awal. Untuk kod berikut:
  1. {
      path: '/',
      name: 'NewsList',
      component: NewsList
    },
    {
      path: '/add',
      name: 'AddNews',
      component: AddNews
    }
    Salin selepas log masuk

  2. 10 Jalankan aplikasi:

    Jalankan arahan berikut dalam terminal untuk memulakan aplikasi:
  1. <template>
      <div>
     <h1>时事通讯应用</h1>
     <router-link to="/">查看新闻</router-link>
     <router-link to="/add">添加新闻</router-link>
     <router-view></router-view>
      </div>
    </template>
    Salin selepas log masuk

    Buka pelayar dan lawati "http://localhost:8080" , anda boleh melihat halaman utama aplikasi.
  2. Kesimpulan:
Melalui kod sampel dalam artikel ini, kami berjaya mencipta aplikasi surat berita berasaskan Vue dan menggunakan Firebase Cloud Firestore untuk mencapai penyegerakan data masa nyata. Pembangun boleh terus menambah baik aplikasi mengikut keperluan dan idea mereka sendiri, seperti menambah pengesahan pengguna, fungsi ulasan, dsb. Saya harap artikel ini dapat membantu aplikasi praktikal Vue dan Firebase, supaya aplikasi anda dapat memenuhi keperluan pengguna dengan lebih baik.

Atas ialah kandungan terperinci Pembangunan aplikasi surat berita berdasarkan Vue: Penyegerakan data masa nyata menggunakan Firebase Cloud Firestore. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan