Yii2中的资源管理的sourcePath/basePath/baseUrl分别是指的什么

简介: Yii2中的资源管理的sourcePath/basePath/baseUrl分别是指的什么

sourcePath/basePath/baseUrl

sourcePath 源文件路径

sourcePath的位置位于vendor/yiisoft/yii2/web/AssetBundle.php

指的是项目的模板引用的资源的源文件,如果设置的资源文件目录是不能被直接访问的,那么在访问的时候Yii2会将需要的文件复制到临时文件夹中。

比如,我们将sourcePath设置为@app/res/,也就是静态资源文件(图片,css,js)都放在/res

显然/res不在/web下,那么不能被直接访问,所以,我们引入发布资源的概念,让你需要的资源文件在视图文件中引用资源包被注册。

basePath 基础路径

basePath指的是包含这个AssetBundle中资源文件的Web可访问目录。

但是当你设置了sourcePath,则basePath就会被AssetManager覆盖。

assetManager的位置,通过查看源代码

/**
     * Returns the asset manager.
     * @return \yii\web\AssetManager the asset manager application component.
     */
    public function getAssetManager()
    {
        return $this->get('assetManager');
    }

assetManager的获取方式为配置文件的web.php

baseUrl

baseUrl指的是创建资源包中引用的js和css的基本网址

当资源包中的js采用相对路径表示时,会自动加上baseUrl的设置,比如js/main.js

总结

  • sourcePath可以配置非web目录下的静态资源
  • basePath配置web目录下的静态资源
  • sourcePathbasePath是冲突的,只能二选一
  • baseUrl给引入相对路径的静态资源提供域名前缀
相关文章
Retrofit 动态修改BaseUrl 操作
Retrofit 动态修改BaseUrl 操作
379 0
|
4月前
【Azure 应用服务】Web App Service 中的 应用程序配置(Application Setting) 怎么获取key vault中的值
【Azure 应用服务】Web App Service 中的 应用程序配置(Application Setting) 怎么获取key vault中的值
|
2月前
|
API
Harmony状态管理@Local和@Param
Harmony状态管理@Local和@Param
61 0
|
5月前
|
Rust 前端开发 JavaScript
低代码使用问题之Supabase是什么,支持哪些客户端库
低代码使用问题之Supabase是什么,支持哪些客户端库
|
4月前
|
Java Maven C++
【Azure Developer】记录一次使用Java Azure Key Vault Secret示例代码生成的Jar包,单独运行出现 no main manifest attribute, in target/demo-1.0-SNAPSHOT.jar 错误消息
【Azure Developer】记录一次使用Java Azure Key Vault Secret示例代码生成的Jar包,单独运行出现 no main manifest attribute, in target/demo-1.0-SNAPSHOT.jar 错误消息
|
4月前
|
安全 API 网络架构
【Azure Logic App】使用 Easy Auth 在标准逻辑应用(Standard Logic App)中触发工作流
【Azure Logic App】使用 Easy Auth 在标准逻辑应用(Standard Logic App)中触发工作流
|
4月前
|
存储
【Azure 应用服务】Storage Queue触发Azure Function时报错 The input is not a valid Base-64 string
【Azure 应用服务】Storage Queue触发Azure Function时报错 The input is not a valid Base-64 string
|
7月前
|
运维 Kubernetes 前端开发
云效产品使用报错问题之部署主机上的globalParams.sh中变量的值是base64编码过的,如何解决
本合集将整理呈现用户在使用过程中遇到的报错及其对应的解决办法,包括但不限于账户权限设置错误、项目配置不正确、代码提交冲突、构建任务执行失败、测试环境异常、需求流转阻塞等问题。阿里云云效是一站式企业级研发协同和DevOps平台,为企业提供从需求规划、开发、测试、发布到运维、运营的全流程端到端服务和工具支撑,致力于提升企业的研发效能和创新能力。
|
7月前
|
PHP
文件上传--Upload-labs--Pass17--条件竞争
文件上传--Upload-labs--Pass17--条件竞争
|
JavaScript
webpack基础篇(九):资源解析--使用url-loader
webpack基础篇(九):资源解析--使用url-loader
119 0
webpack基础篇(九):资源解析--使用url-loader