VUE API REFERENCE
CÁC CHỦ ĐỀ
BÀI MỚI NHẤT
MỚI CẬP NHẬT

Gửi HTTP GET Request và hiển thị dữ liệu trong VueJS 2

Vue Router là một thư viện quan trọng trong ngôn ngữ lập trình JavaScript, giúp chúng ta quản lý và điều hướng giữa các trang trong ứng dụng VueJS một cách thuận tiện. Trong bài viết này, mình sẽ tập trung vào một trong những khía cạnh quan trọng của Vue Router, đó là việc gửi HTTP GET request và hiển thị dữ liệu từ một API công khai. Bài tập này không chỉ giúp bạn nắm vững cách sử dụng Vue Router mà còn đưa ra cơ hội để làm quen với việc tương tác với các dịch vụ web từ ứng dụng VueJS của bạn.

Gửi HTTP GET Request và hiển thị dữ liệu trong VueJS 2

Mình sẽ tạo một component Vue để thực hiện việc gửi HTTP GET request đến một API và hiển thị dữ liệu nhận được. Điều này giúp bạn hiểu rõ hơn về cách tương tác với các nguồn dữ liệu bên ngoài và cách tích hợp chúng vào ứng dụng VueJS của bạn.

Để thực hiện bài tập về Gửi HTTP GET Request và hiển thị dữ Liệu trong VueJS 2, bạn cần sử dụng Axios để thực hiện HTTP GET request. Dưới đây là cách bạn có thể triển khai:

Các thư mục cần có:

z5079898875922 ff4d8d091ed2742d5e6f3518447eedb8 jpg

Cài Đặt Axios

# Sử dụng npm
npm install axios

Tạo Component Vue

components/DataFetching.vue

<template>
  <div>
    <h2>Data from API</h2>
    <ul class="post-list">
      <!-- Hiển thị dữ liệu nhận được từ API -->
      <li v-for="post in posts" :key="post.id" class="post-item">
        {{ post.title }}
      </li>
    </ul>
  </div>
</template>
<style scoped>
/* Scoped styles chỉ áp dụng cho component này */

.post-list {
  list-style: none;
  padding: 0;
}

.post-item {
  margin-bottom: 10px;
  padding: 10px;
  border: 1px solid #ddd;
  border-radius: 5px;
  background-color: #f8f8f8;
}
</style>
<script>
import axios from 'axios';

export default {
  data() {
    return {
      posts: [],
    };
  },
  mounted() {
    // Gửi HTTP GET request khi component được mount
    axios.get('https://jsonplaceholder.typicode.com/posts')
      .then(response => {
        // Lưu trữ dữ liệu nhận được vào biến posts
        this.posts = response.data;
      })
      .catch(error => {
        console.error('Error fetching data:', error);
      });
  },
};
</script>

Cấu hình Routes

src/main.js

import Vue from 'vue';
import App from './App.vue';
import VueRouter from 'vue-router';
import DataFetching from './components/DataFetching.vue';

Vue.config.productionTip = false;

Vue.use(VueRouter);

const routes = [
  { path: '/', component: App },
  { path: '/data-fetching', component: DataFetching },
];

const router = new VueRouter({
  routes,
  mode: 'history', // Chế độ history để có URL dễ đọc hơn
});

new Vue({
  render: h => h(App),
  router,
}).$mount('#app');

Sử dụng Component trong Template

App.vue

<template>
  <div id="app">
    <h1>Vue Router Example</h1>
    <router-link to="/">Home</router-link>
    <router-link to="/data-fetching">Data Fetching</router-link>

    <!-- Hiển thị component tương ứng với route -->
    <router-view></router-view>
  </div>
</template>

<script>
export default {
  name: 'App',
};
</script>

Chạy ứng dụng

npm run serve

Bây giờ, khi bạn truy cập vào route "/data-fetching", component DataFetching sẽ gửi một HTTP GET request đến API và hiển thị dữ liệu nhận được trong template.

z5079895811258 062c99bc13234504ba6077ad868249f1 jpg

z5079896467565 ac5f95fb05e1b9ae97fe1d0ea56acb57 jpg

Trong bài tập này, mình đã tìm hiểu cách sử dụng Vue Router để gửi HTTP GET request và hiển thị dữ liệu từ một API. Bằng cách này, bạn có thể xây dựng ứng dụng VueJS của mình với khả năng tương tác động và đáp ứng với dữ liệu từ các nguồn bên ngoài. Việc này là một bước quan trọng trong việc phát triển ứng dụng web đa dạng và mạnh mẽ. Hãy tiếp tục tìm hiểu thêm về Vue Router và các tính năng khác của VueJS để nâng cao kỹ năng phát triển của bạn.

test php

Bài giải

-------------------- ######## --------------------

Câu hỏi thường gặp liên quan:

Cùng chuyên mục:

Bài tập VueJS 2: Two-way binding trong VueJS 2

Bài tập VueJS 2: Two-way binding trong VueJS 2

Bài tập VueJS 2: Xử lý sự kiện trong VueJS 2

Bài tập VueJS 2: Xử lý sự kiện trong VueJS 2

Bài tập VueJS 2: Components trong VueJS 2

Bài tập VueJS 2: Components trong VueJS 2

Bài tập VueJS 2: Binding dữ liệu trong VueJS 2

Bài tập VueJS 2: Binding dữ liệu trong VueJS 2

Sử dụng directives (v-bind, v-model) để hiển thị và cập nhật dữ liệu bằng VueJS 2

Sử dụng directives (v-bind, v-model) để hiển thị và cập nhật dữ liệu bằng VueJS 2

Tạo nút và xử lý sự kiện khi nút được nhấn trong VueJS 2

Tạo nút và xử lý sự kiện khi nút được nhấn trong VueJS 2

VueJS 2 Components: Tạo và quản lý ToDo List đơn giản

VueJS 2 Components: Tạo và quản lý ToDo List đơn giản

Các quy tắc trong VueJS 2

Các quy tắc trong VueJS 2

Tạo component và binding data trong VueJS 2

Tạo component và binding data trong VueJS 2

Tìm hiểu Scoped CSS trong VueJS 2

Tìm hiểu Scoped CSS trong VueJS 2

Sử dụng forceUpdate trong VueJS 2

Sử dụng forceUpdate trong VueJS 2

Sử dụng v-for trong VueJS 2

Sử dụng v-for trong VueJS 2

10 best practices trong VueJS 2

10 best practices trong VueJS 2

Các tạo Custom Directives trong VueJS 2

Các tạo Custom Directives trong VueJS 2

Sử dụng V-for và V-if trong VueJs 2

Sử dụng V-for và V-if trong VueJs 2

Sử dụng methods trong VueJS 2

Sử dụng methods trong VueJS 2

Khác nhau giữa slot và scoped slots trong VueJS 2

Khác nhau giữa slot và scoped slots trong VueJS 2

Tìm hiểu Slots trong VueJS 2

Tìm hiểu Slots trong VueJS 2

Xử lý Custom Events trong VueJS 2

Xử lý Custom Events trong VueJS 2

Ref và Reactive trong VueJS 2

Ref và Reactive trong VueJS 2

Top