Router-link无法点击,我哪里出了问题?
import { createRouter, createWebHistory } from 'vue-router'
import Home from '../views/Home.vue'
import Products from '../views/Products.vue'
const routes = [
{
path: '/',
name: 'Home',
component: Home
},
{
path: '/products',
name: 'Products',
component: Products
}
]
const router = createRouter({
history: createWebHistory(process.env.BASE_URL),
routes
})
export default router
这是我的路由器 index.js 文件,位于我的 app.vue 文件下方。
<template>
<header class="top-bar spread">
<nav class="top-bar-nav">
<router-link to="/" class="top-bar-link">
<i class="icofont-spoon-and-fork"></i>
<span>Home</span>
</router-link>
<router-link to="/products" class="top-bar-link">
<span>Products</span>
</router-link>
<router-link to="/past-orders" class="top-bar-link">
<span>Past Orders</span>
</router-link>
</nav>
<router-link @click="toggleSidebar" href="#" class="top-bar-cart-link">
<i class="icofont-cart-alt icofont-1x"></i>
<span>Cart ({{totalQuantity}})</span>
</router-link>
</header>
<router-view/>
</template>
<script>
export default {
name: 'App',
}
</script>
我正在学习教程,无法弄清楚我错过了什么,因为链接不起作用。我已经在索引文件中添加了路径,安装了 vue-router (这是一个问题),但我的登陆页面显示为纯文本。
在下面的安装之前更改使用顺序时,我没有收到错误: const app = createApp(App);应用程序。使用(路由器); app.mount('#app');
错误:
未捕获的类型错误:无法解构“(0 , vue__WEBPACK_IMPORTED_MODULE_1__.inject)(...)',因为它未定义。
import { createRouter, createWebHistory } from 'vue-router'
import Home from '../views/Home.vue'
import Products from '../views/Products.vue'
const routes = [
{
path: '/',
name: 'Home',
component: Home
},
{
path: '/products',
name: 'Products',
component: Products
}
]
const router = createRouter({
history: createWebHistory(process.env.BASE_URL),
routes
})
export default router
This is my router index.js file and below my app.vue file.
<template>
<header class="top-bar spread">
<nav class="top-bar-nav">
<router-link to="/" class="top-bar-link">
<i class="icofont-spoon-and-fork"></i>
<span>Home</span>
</router-link>
<router-link to="/products" class="top-bar-link">
<span>Products</span>
</router-link>
<router-link to="/past-orders" class="top-bar-link">
<span>Past Orders</span>
</router-link>
</nav>
<router-link @click="toggleSidebar" href="#" class="top-bar-cart-link">
<i class="icofont-cart-alt icofont-1x"></i>
<span>Cart ({{totalQuantity}})</span>
</router-link>
</header>
<router-view/>
</template>
<script>
export default {
name: 'App',
}
</script>
I'm following a tutorial, can't figure out what I've missed because the links aren't working. I've added the paths in the index file, installed vue-router (this was an issue), but my landing page appears as plain text.
On changing the order of use before mount below, I'm not getting an error:const app = createApp(App); app.use(router); app.mount('#app');
Error:
Uncaught TypeError: Cannot destructure property 'options' of '(0 ,
vue__WEBPACK_IMPORTED_MODULE_1__.inject)(...)' as it is undefined.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
感谢您提供存储库链接,这确实帮助我解决了问题:
npm i vue-router
App.vue
文件中存在一些 HTML 错误。这有效:Thanks for the link to the repo, that really helped me see the issues:
npm i vue-router
App.vue
file. This works: