何时使用 <router-link> 与 <a>
When to use <router-link> vs <a>
我是否应该始终使用 <router-link>
而不是 <a>
,即使我链接到应用程序外部的社交媒体页面之类的东西?
<router-link>
适用于应用内链接(例如,指向应用内的页面)。使用 <a>
作为外部链接。
“vue-router”是 Vue 的独立包,由“webpack”安装。
路由设置在router/index.js
从 node_modules.
中的 vue-router 导入到 Router
import Router from 'vue-router'
... new Router...
创建 Router 的一个实例,它是一个对象,带有一个 属性 ‘routes’,它是一个对象数组。这些对象中的每一个都是一个路由,其属性为“路径”、“名称”和“组件”,即使用路由时调用的组件。
{
path: '/about',
name: 'About',
component: About
}
我们需要导入组件,我们使用@将路径带到项目的根目录,即“src”目录。
import About from '@/components/About'
使用
将组件加载到根组件 App.vue
<router-view/>
以及该标签在 App.vue 中的位置。这将允许我们在这个关于组件周围放置一个导航栏、页眉和页脚。这样当你去.../about时,页面中只有about组件发生变化,整个页面不会刷新。
接下来创建一个 NavBar 组件并将其放置在 App.vue 模板中。
这会起作用,
<a href="/about">About</a>
然而在 vue 中应该这样做,
<router-link to="/about>About</router-link>
当 呈现给浏览器时,它变成了 所以在 css 中我们仍然引用它作为 'a' 而不是 'router-link'.
我们可以像这样在中使用“to”属性进行数据绑定,
:to={ name: 'About'}
其中“名称”是 main.js 路线中对象的“路线”数组中的 属性。这使路由动态化。
使用此数据绑定将“/about”更改为其他内容,例如“abt”,您只需更改,
path: 'abt',
在对象的路由数组中。
路由器 link :如果我们使用路由器 link 页面将不会重新加载,但是使用 <a>
link 导航通过页面刷新发生。
我是否应该始终使用 <router-link>
而不是 <a>
,即使我链接到应用程序外部的社交媒体页面之类的东西?
<router-link>
适用于应用内链接(例如,指向应用内的页面)。使用 <a>
作为外部链接。
“vue-router”是 Vue 的独立包,由“webpack”安装。
路由设置在router/index.js
从 node_modules.
中的 vue-router 导入到 Routerimport Router from 'vue-router'
... new Router...
创建 Router 的一个实例,它是一个对象,带有一个 属性 ‘routes’,它是一个对象数组。这些对象中的每一个都是一个路由,其属性为“路径”、“名称”和“组件”,即使用路由时调用的组件。
{
path: '/about',
name: 'About',
component: About
}
我们需要导入组件,我们使用@将路径带到项目的根目录,即“src”目录。
import About from '@/components/About'
使用
将组件加载到根组件 App.vue<router-view/>
以及该标签在 App.vue 中的位置。这将允许我们在这个关于组件周围放置一个导航栏、页眉和页脚。这样当你去.../about时,页面中只有about组件发生变化,整个页面不会刷新。
接下来创建一个 NavBar 组件并将其放置在 App.vue 模板中。
这会起作用,
<a href="/about">About</a>
然而在 vue 中应该这样做,
<router-link to="/about>About</router-link>
当
我们可以像这样在
:to={ name: 'About'}
其中“名称”是 main.js 路线中对象的“路线”数组中的 属性。这使路由动态化。
使用此数据绑定将“/about”更改为其他内容,例如“abt”,您只需更改,
path: 'abt',
在对象的路由数组中。
路由器 link :如果我们使用路由器 link 页面将不会重新加载,但是使用 <a>
link 导航通过页面刷新发生。