Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
DCloud
unidocs-zh
提交
43fa97b7
unidocs-zh
项目概览
DCloud
/
unidocs-zh
通知
3172
Star
105
Fork
804
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
93
列表
看板
标记
里程碑
合并请求
67
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
unidocs-zh
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
93
Issue
93
列表
看板
标记
里程碑
合并请求
67
合并请求
67
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
43fa97b7
编写于
11月 08, 2024
作者:
F
fxy060608
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
docs: 增加绝对路径和相对路径介绍
上级
b26300ae
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
73 addition
and
0 deletion
+73
-0
docs/tutorial/page-path.md
docs/tutorial/page-path.md
+73
-0
未找到文件。
docs/tutorial/page-path.md
0 → 100644
浏览文件 @
43fa97b7
### 绝对路径和相对路径
在日常开发中,经常会遇到使用绝对路径还是相对路径的问题,下面我们介绍下这两种路径。
#### 绝对路径
绝对路径:是指从项目根目录开始的完整路径。它用于指定文件或目录的确切位置。绝对路径通常以斜杠(/)开头,表示从根目录开始。
例如:
```
vue
<
template
>
<!-- 图片组件引用绝对路径 -->
<image
src=
"/static/logo.png"
/>
<!-- 视频组件引用绝对路径 -->
<video
src=
"/static/demo.mp4"
/>
<!-- 其他需要引用资源的媒体组件均可以使用绝对路径 -->
</
template
>
<
script
setup
>
// 使用一个图片资源时,可以使用绝对路径
uni
.
getImageInfo
({
src
:
"
/static/logo.png
"
,
});
// 跳转页面时,可以使用绝对路径
uni
.
navigateTo
({
url
:
"
/pages/login/login
"
,
});
</
script
>
```
这里的
`/static/logo.png`
就是一个绝对路径,表示图片文件位于项目根目录下的 static 文件夹中。
绝对路径的优点是可以直接定位到文件的确切位置,不受当前目录的影响,通常需要动态传递的路径,我们建议使用绝对路径。
**注意**
-
当使用
`import`
语句导入代码文件或静态资源时,
`@/`
表示项目根目录的绝对路径。如
`import { add } from "@/common/utils"`
#### 相对路径
相对路径:在编译时是指一个文件或目录相对于另一个文件或目录的位置,在运行时是指一个文件相对于当前页面路由的位置(不建议使用运行时的相对路径,应该优先使用绝对路径)。
例如:
组件 components/custom/custom.vue
```
vue
<
template
>
<!-- 绑定动态路径 -->
<image
:src=
"src"
/>
</
template
>
<
script
setup
>
// 编译时:使用 import 语句相对路径导入图片
import
logo
from
"
../../static/logo.png
"
;
console
.
log
(
logo
);
// import 语句会在编译阶段根据当前文件位置转换为绝对路径
// 运行时
// 错误的相对路径用法,image组件会在运行时根据当前页面路由来转换该相对路径,当不同的页面使用custom组件时,转换的路径是不同的
// 应该使用绝对路径:/static/logo.png,这样可以确保在任意页面都访问到正确的图片地址
const
src
=
"
../../static/logo.png
"
;
uni
.
navigateTo
({
// 运行时
// 错误的相对路径用法,路由会在运行时根据当前页面路由来转换该相对路径
// 应该使用绝对路径:/pages/index/index
url
:
"
../../pages/index/index
"
,
});
</
script
>
```
**注意**
-
在 uni-app x 项目中,dialogPage 不影响页面栈和路由地址,所以也不会影响运行时的相对路径转换
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录