Vue.js 构建 SPA

使用 Vue.js 构建单页应用(SPA)是一个非常流行的选择,它提供了强大的工具和库来简化开发过程。步骤如下:

1. 安装 Vue CLI

首先,你需要安装 Vue CLI(命令行工具),它可以帮助你快速搭建 Vue 项目。

复制代码
npm install -g @vue/cli

2. 创建新项目

使用 Vue CLI 创建一个新的 Vue 项目。

复制代码
vue create my-vue-app

在这个过程中,你可以选择一些预设配置或者手动选择特性。

3. 进入项目目录

复制代码
cd my-vue-app

4. 安装依赖

复制代码
npm install

5. 添加 Vue Router

Vue Router 是 Vue.js 官方的路由管理器,用于构建单页应用。

复制代码
npm install vue-router

6. 配置 Vue Router

src 目录下创建一个 router.js 文件,并进行如下配置:

复制代码
import Vue from 'vue';
import Router from 'vue-router';
import Home from './views/Home.vue';
import About from './views/About.vue';

Vue.use(Router);

export default new Router({
  routes: [
    {
      path: '/',
      name: 'home',
      component: Home
    },
    {
      path: '/about',
      name: 'about',
      component: About
    }
  ]
});
  1. 修改 main.js

main.js 中引入并使用路由配置:

复制代码
import Vue from 'vue';
import App from './App.vue';
import router from './router';

Vue.config.productionTip = false;

new Vue({
  router,
  render: h => h(App)
}).$mount('#app');
  1. 创建视图组件

src/views 目录下创建 Home.vueAbout.vue 文件:

Home.vue:

复制代码
<template>
  <div>
    <h1>Home Page</h1>
  </div>
</template>

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

About.vue:

复制代码
<template>
  <div>
    <h1>About Page</h1>
  </div>
</template>

<script>
export default {
  name: 'About'
};
</script>
  1. 修改 App.vue

App.vue 中添加导航链接:

复制代码
<template>
  <div id="app">
    <router-link to="/">Home</router-link>
    <router-link to="/about">About</router-link>
    <router-view/>
  </div>
</template>

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

10. 运行项目

复制代码
npm run serve

浏览器中访问 http://localhost:8080

相关推荐
Jagger_1 小时前
抱怨到躺床关灯的一次 DIY 记录
前端
陈随易4 小时前
前端大咖mizchi不满Rust、TypeScript却爱上MoonBit
前端·后端·程序员
whinc5 小时前
🚀 两年小程序开发,我把踩过的坑做成了开源 Skills
前端·微信小程序·ai编程
兆子龙6 小时前
ahooks useRequest 深度解析:一个 Hook 搞定所有请求
java·javascript
兆子龙6 小时前
React Suspense 从入门到实战:让异步加载更优雅
java·javascript
sure2826 小时前
React Native中创建自定义渐变色
前端·react native
KKKK7 小时前
SSE(Server-Sent Events)流式传输原理和XStream实践
前端·javascript
子兮曰7 小时前
Humanizer-zh 实战:把 AI 初稿改成“能发布”的技术文章
前端·javascript·后端
Din8 小时前
主动取消的防抖
前端·javascript·typescript