Cara melaksanakan interaksi data dalam Vue.js tanpa menggunakan pangkalan data

PHPz
Lepaskan: 2023-04-13 11:18:31
asal
922 orang telah melayarinya

Dengan kemajuan teknologi Internet dan peningkatan bilangan senario aplikasi, teknologi bahagian hadapan juga berkembang dari hari ke hari. Dalam tahun-tahun kebelakangan ini, rangka kerja bahagian hadapan telah menjadi salah satu senjata yang sangat diperlukan untuk pemaju. Salah satu rangka kerja JavaScript sumber terbuka yang popular ialah Vue.js, rangka kerja progresif untuk membina antara muka pengguna web. Ia membolehkan pembangunan pesat melalui pengikatan data ringan, seni bina komponen dan API yang kaya.

Walau bagaimanapun, Vue menggunakan permintaan ajax dan pangkalan data belakang untuk interaksi data Kaedah ini sangat biasa semasa pembangunan. Walau bagaimanapun, beberapa projek kecil tidak perlu menggunakan pangkalan data untuk interaksi data Sebagai contoh, mereka hanya perlu mendapatkan data tempatan, dan kemudian tidak perlu menggunakan pangkalan data. Jadi, bagaimana untuk melaksanakan interaksi data dalam Vue.js tanpa menggunakan pangkalan data?

1. Gunakan data json

Data json ialah format pertukaran data yang ringan Peraturan sintaksnya sangat mudah dan struktur datanya jelas pangkalan data. Sangat mudah untuk menggunakan data json untuk interaksi data dalam vue. Kami boleh meletakkan fail json dalam folder awam projek, dan kemudian membuat permintaan data melalui axios atau fetch.

// 在 public 文件夹下新建一个 data.json 文件
{
  "data": [
    {
      "name": "小明",
      "age": 18
    },
    {
      "name": "小红",
      "age": 20
    }
  ]
}
Salin selepas log masuk
<!-- 在 Vue 组件中使用 axios 获取 json 数据 -->
<template>
  <div>
    <ul>
      <li v-for="(item,index) in dataList" :key="index">{{item.name}}-{{item.age}}</li>
    </ul>
  </div>
</template>
<script>
import axios from 'axios'
export default {
  data () {
    return {
      dataList:[],
    }
  },
  created () {
    axios.get('/data.json')
      .then(res => {
        console.log(res.data)
        this.dataList = res.data.data
      })
      .catch(err => {
        console.log(err)
      })
  },
}
</script>
Salin selepas log masuk
2. Gunakan data palsu

Data olok-olok merujuk kepada data simulasi, iaitu data yang dibina oleh kami, digunakan untuk mensimulasikan data sebenar. Ia boleh digunakan untuk membantu pembangun bahagian hadapan membangun tanpa antara muka bahagian belakang Disebabkan jumlah data yang kecil, data olok-olok biasanya diletakkan secara tempatan dalam projek bahagian hadapan (biasanya dalam direktori src/mock). Mengintegrasikan mock.js dalam Vue juga agak mudah Kami boleh memperkenalkan mock.js dalam main.js dan kemudian menggunakan ekspres untuk mensimulasikan antara muka bahagian belakang.

// 安装 express 和 mockjs
npm i express mockjs -D

// 在 src/mock/index.js 中定义接口返回的数据
import Mock from 'mockjs'
let data = Mock.mock({
  "data|10-20": [
    {
      "id|+1": 1,
      "name": '@cname',
      "age|18-25": 18,
      "city": '@city',
      "address": '@county(true)',
      "img": "@image(50x50,@color)"
    }
  ]
})
Mock.mock('/api/getData', 'get', () => {
  return data
})

// 在 main.js 中引入 express 并注册中间件
import express from 'express'
const app = express()
const port = 3000
let apiRoutes = express.Router()
import './mock'
app.use('/api', apiRoutes)
app.listen(port, () => {
  console.log(`server running @${port}`)
})

// 在具体的组件中通过 axios 请求数据
<template>
  <div>
    <ul>
      <li v-for="(item,index) in dataList" :key="index">{{item.name}}-{{item.age}}</li>
    </ul>
  </div>
</template>
<script>
import axios from 'axios'
export default {
  data () {
    return {
      dataList:[],
    }
  },
  created () {
    axios.get('/api/getData')
      .then(res => {
        console.log(res.data)
        this.dataList = res.data.data
      })
      .catch(err => {
        console.log(err)
      })
  },
}
</script>
Salin selepas log masuk
3. Gunakan storan tempatan

localStorage ialah kaedah mekanisme storan web. Ia boleh menyimpan beberapa data nilai kunci mudah pada klien dalam bentuk rentetan, jadi bersiri dan penyahserikatan diperlukan apabila menyimpan objek dan tatasusunan. Ia juga sangat mudah untuk menggunakan localStorage untuk menyimpan data dalam Vue. .

<template>
  <div>
    <input type="text" v-model="inputVal">
    <button @click="add">添加</button>
    <ul>
      <li v-for="(item,index) in dataList" :key="index">{{item}}</li>
    </ul>
  </div>
</template>
<script>
export default {
  data () {
    return {
      inputVal: '',
      dataList:[],
    }
  },
  methods: {
    add () {
      if (!this.inputVal) return
      this.dataList.push(this.inputVal)
      window.localStorage.setItem('dataList', JSON.stringify(this.dataList))
      this.inputVal = ''
    }
  },
  created () {
    let localData = window.localStorage.getItem('dataList')
    console.log(localData)
    if (localData !== null) {
      this.dataList = JSON.parse(localData)
    }
  },
}
</script>
Salin selepas log masuk

Ringkasnya, untuk projek kecil, menggunakan data json, data olok-olok dan storan setempat adalah pilihan yang baik. Sudah tentu, untuk aplikasi besar, menggunakan pangkalan data back-end untuk interaksi data masih merupakan penyelesaian pilihan. Artikel ini terutamanya memperkenalkan cara melaksanakan interaksi data tanpa menggunakan pangkalan data dalam Vue.js, yang mempunyai nilai rujukan tertentu untuk pemula dalam pembangunan Vue.

Atas ialah kandungan terperinci Cara melaksanakan interaksi data dalam Vue.js tanpa menggunakan pangkalan data. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!