📜  如何在按钮 vuejs 中使用路由器 (1)

📅  最后修改于: 2023-12-03 15:09:02.302000             🧑  作者: Mango

如何在按钮 Vue.js 中使用路由器

Vue.js 是一种流行的 JavaScript 框架,它被广泛用于构建单页应用程序(Single-Page Application,SPA)。而随着应用程序的增长,管理页面和路由变得更加困难。这时,我们需要使用 Vue.js 的路由器。

本文将向您介绍如何在按钮 Vue.js 中使用路由器。我们将通过一个简单的示例来演示如何创建页面和路由,并将其与按钮组件集成。在本文中,我们使用 Vue CLI 来创建新项目。

创建新项目

在开始之前,请确保您已安装最新的版本 Node.jsVue CLI(如果您还没有安装它们)。然后,请打开终端并输入以下命令:

vue create my-app
cd my-app

这将在您的计算机上创建一个名为“my-app”的新 Vue.js 项目。

添加页面和路由

接下来,我们将创建一个名为“Home”的页面,并将其连接到我们的路由器。

首先,请在 src/views 文件夹中创建一个新文件。我们将其命名为“Home.vue”。该文件包含以下代码:

<template>
  <div class="home">
    <h1>欢迎来到首页</h1>
    <p>这是您的主要介绍文本</p>
  </div>
</template>

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

<style>
.home {
  text-align: center;
}
</style>

接下来,我们需要在我们的 src/router/index.js 文件中定义路由。该文件包含以下代码:

import Vue from 'vue'
import VueRouter from 'vue-router'
import Home from '../views/Home.vue'

Vue.use(VueRouter)

const routes = [
  {
    path: '/',
    name: 'Home',
    component: Home
  }
]

const router = new VueRouter({
  routes
})

export default router

这个文件导入我们刚刚创建的“Home”组件,并将它连接到根路径('/')。现在我们已经定义了我们的路由,它们将通过 Vue.js 的路由器生效。

添加按钮控件

现在我们将通过 v-on:click 指令向按钮添加路由功能。我们将在 src/components 文件夹中创建一个名为“Button.vue”的新文件。该文件包含以下模板代码:

<template>
  <button v-on:click="navigate">{{ label }}</button>
</template>

<script>
export default {
  name: 'Button',
  props: {
    to: {
      type: String,
      default: '/'
    },
    label: {
      type: String,
      default: '按钮'
    }
  },
  methods: {
    navigate: function () {
      this.$router.push(this.to)
    }
  }
}
</script>

在这里,我们定义了一个名为“Button”的新组件,并向其添加一个 v-on:click 事件监听器。当用户单击此按钮时,该组件将使用 $router.push 来跳转到我们的路由器。

集成按钮和路由器

现在,我们将使用我们的 <button> 组件,将其放入 Home.vue 页面,并添加一个跳转到新页面的按钮。这个文件包含以下代码:

<template>
  <div class="home">
    <h1>欢迎来到首页</h1>
    <p>这是您的主要介绍文本</p>
    <Button to="/about" label="前往关于我们页面" />
  </div>
</template>

<script>
import Button from '../components/Button.vue'

export default {
  name: 'Home',
  components: {
    Button
  }
}
</script>

这里,我们导入了我们的 <Button> 组件,并使用它将带有标签“前往关于我们页面”的按钮放入 Home.vue 页面中。该按钮将使用 $router.push 向我们的“/about”路由导航。

现在,我们已经完成了添加路由到按钮 Vue.js 的过程。以下是我们的完整代码片段。

```html
<template>
  <div class="home">
    <h1>欢迎来到首页</h1>
    <p>这是您的主要介绍文本</p>
    <Button to="/about" label="前往关于我们页面" />
  </div>
</template>

<script>
import Button from '../components/Button.vue'

export default {
  name: 'Home',
  components: {
    Button
  }
}
</script>

<style>
.home {
  text-align: center;
}
</style>

<template>
  <button v-on:click="navigate">{{ label }}</button>
</template>

<script>
export default {
  name: 'Button',
  props: {
    to: {
      type: String,
      default: '/'
    },
    label: {
      type: String,
      default: '按钮'
    }
  },
  methods: {
    navigate: function () {
      this.$router.push(this.to)
    }
  }
}
</script>

<style>
button {
  background-color: blue;
  color: white;
  border-radius: 5px;
  padding: 10px;
  cursor: pointer;
}
</style>