首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >基本选项在vue-路由器中的工作方式

基本选项在vue-路由器中的工作方式
EN

Stack Overflow用户
提问于 2017-03-08 06:47:06
回答 4查看 31.8K关注 0票数 13

作为基本期权的标准文档

应用程序的基本URL。例如,如果整个单页应用程序都位于/app/下面,那么基应该使用"/app/“值。

但我试过如下,它似乎不起作用:

代码语言:javascript
运行
复制
const router = new VueRouter({
  base: "/app/",
  routes
})

演示小提琴

EN

回答 4

Stack Overflow用户

发布于 2017-03-08 07:25:21

基的默认值为'/'。从它用于路由的方式中得出类比:

代码语言:javascript
运行
复制
<router-link to="home">Home</router-link>

代码语言:javascript
运行
复制
<router-link :to="{ path: '/abc'}" replace></router-link>

我只是省略了/app作品。基础不需要成为router-link的一部分

编辑

basevue-router中的应用

(在这个测试中,我使用了vue-cliwebpack模板。)

我的路由器配置如下:

代码语言:javascript
运行
复制
export default new Router({
  base: '/app',
  mode: 'history',
  routes: [
    {
      path: '/',
      name: 'RangeInputDemo',
      component: ComponentDemo
    }
  ]
})

将基添加为'/app'对整个项目中发生的路由没有任何影响,就好像基仍然被设置为'/'一样。

我试图从服务器端(项目所在的网址)更改url。

所以在dev-server.js中:

代码语言:javascript
运行
复制
var uri = 'http://localhost:' + port 

控制应用程序的url,我做了一个小小的修改:

代码语言:javascript
运行
复制
var uri = 'http://localhost:' + port + '/app'

这导致应用程序显示:

注意,vue控制台中的fullPath'/' (第二个图像)。

为了再次检查,我再次将base更改为'/'

因此,base配置的router属性是设置服务器设置的基本url,如果服务器以'/'以外的路由服务应用程序,则可以使用base使应用程序从set运行。

因为这个问题需要在/app下移动路由,所以我认为如果服务器不应该改变它所服务的路由,那么以/app作为父路由将是解决方案。

票数 12
EN

Stack Overflow用户

发布于 2021-07-01 13:14:02

在Vue路由器4中,您可以通过历史api设置基本路径:

代码语言:javascript
运行
复制
 const router = createRouter({
  history: createWebHistory(process.env.BASE_URL),
  routes
})

那么每条路径都将以process.env.BASE_URL作为前缀。

票数 7
EN

Stack Overflow用户

发布于 2018-06-29 19:05:04

有同样的问题,设置" base“不起作用-解决方法是更新路由器中的基url:

代码语言:javascript
运行
复制
{ name: 'listings', path: baseUrl + '/listings',   component: PageListings}

并按名称提及路线:

代码语言:javascript
运行
复制
<router-link :to="{ name: 'listings' }" exact>Listings</router-link>
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42664712

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档