diff --git a/docs/tutorial/project.md b/docs/tutorial/project.md index fffc3b0d9e8f07c5ae596e9aade792694c4b5bd8..1a49bdea03ca5ef0fb708c80072f9330406b2356 100644 --- a/docs/tutorial/project.md +++ b/docs/tutorial/project.md @@ -17,7 +17,7 @@ │ │ └─index.vue index页面 │ └─list │ └─list.vue list页面 -├─static 存放应用引用的本地静态资源(如图片、视频等)的目录,注意:静态资源只能存放于此 +├─static 存放应用引用的本地静态资源(如图片、视频等)的目录,注意:静态资源都应存放于此目录 ├─uni_modules 存放[uni_module](/uni_modules)。 ├─platforms 存放各平台专用页面的目录,详见 ├─nativeplugins App原生语言插件 详见 @@ -37,10 +37,23 @@ - -`static目录` 使用注意 -- 编译到任意平台时,`static` 目录下除不满足[条件编译](https://uniapp.dcloud.net.cn/tutorial/platform.html#static-%E7%9B%AE%E5%BD%95%E7%9A%84%E6%9D%A1%E4%BB%B6%E7%BC%96%E8%AF%91)的文件,会直接复制到最终的打包目录,不会打包编译。非 `static` 目录下的文件(vue、js、css 等)只有被引用时,才会被打包编译。 -- `css`、`less/scss` 等资源不要放在 `static` 目录下,建议这些公用的资源放在自建的 `common` 目录下。 - **Tips** - HbuilderX 1.9.0+ 支持在根目录创建 `ext.json`、`sitemap.json` 等小程序需要的文件。 + + +### static目录 +为什么需要static这样的目录? + +uni-app编译器根据pages.json扫描需要编译的页面,并根据页面引入的js、css合并打包文件。\ +对于本地的图片、字体、视频、文件等资源,如果可以直接识别,那么也会把这些资源文件打包进去,但如果这些资源以变量的方式引用, +比如:``````,甚至可能有更复杂的函数计算,此时编译器无法分析。\ + +那么有了static目录,编译器就会把这个目录整体复制到最终编译包内。这样只要运行时确实能获取到这个图片,就可以显示。 + +当然这也带来一个注意事项,如果static里有一些没有使用的废文件,也会被打包到编译包里,造成体积变大。 + +另外注意,static目录支持特殊的平台子目录,比如web、app、mp-weixin等,这些目录存放专有平台的文件,这些平台的文件在打包其他平台时不会被包含。详见[条件编译](https://uniapp.dcloud.net.cn/tutorial/platform.html#static-%E7%9B%AE%E5%BD%95%E7%9A%84%E6%9D%A1%E4%BB%B6%E7%BC%96%E8%AF%91) + +非 `static` 目录下的文件(vue组件、js、css 等)只有被引用时,才会被打包编译。 + +`css`、`less/scss` 等资源不要放在 `static` 目录下,建议这些公用的资源放在自建的 `common` 目录下。 \ No newline at end of file diff --git a/docs/uni-app-x/api/prompt.md b/docs/uni-app-x/api/prompt.md index f8586031c147d9f6a3e3d90a9556fa83307b8603..1335a4a8c546ae9e26e3c6880fc054d51b27a4f7 100644 --- a/docs/uni-app-x/api/prompt.md +++ b/docs/uni-app-x/api/prompt.md @@ -61,4 +61,4 @@ ## Bug & Tips@tips -- 目前已知在页面生命周期 onLoad 中调用以上弹窗 API 可能无法正常显示,暂时建议在页面生命周期 onReady 及之后再调用,后续版本会优化此问题 +- 在页面生命周期 onLoad 中调用以上弹窗 API 可能无法正常显示,暂时建议在页面生命周期 onReady 及之后再调用。此bug已于HBuilderX 3.97+修复 diff --git a/docs/uni-app-x/component/README.md b/docs/uni-app-x/component/README.md index 55f48ba5b6e97a49de5e284df0680c1732685ae9..804911e0bfad4a89b0b9908de23050181409caba 100644 --- a/docs/uni-app-x/component/README.md +++ b/docs/uni-app-x/component/README.md @@ -260,7 +260,7 @@ Uni`组件名(驼峰)`Element **bug&tips** -- 目前uts组件,即封装原生ui给uni-app或uni-app x的页面中使用,类型与内置组件的 Uni`组件名(驼峰)`Element 方式相同。目前没有代码提示,未来不排除更换方案的可能。 +- 目前uts组件,即封装原生ui给uni-app或uni-app x的页面中使用,类型与内置组件的 Uni`组件名(驼峰)`Element 方式相同。目前没有代码提示。 ### easycom组件调用方法或设置属性@method_easycom diff --git a/docs/uni-app-x/component/video.md b/docs/uni-app-x/component/video.md index 24afd0207fc0f7b67d1bba36d6cbdefd42d95ab7..da6fdf931830bb6bb9e86f80b139049c61df782c 100644 --- a/docs/uni-app-x/component/video.md +++ b/docs/uni-app-x/component/video.md @@ -33,5 +33,5 @@ video的操作api为[uni.createVideoContext()](../api/create-video-context.md) ### Bug & Tips@tips - 暂不支持横屏全屏后放置子组件 - 标准运行基座默认不包含intel x86 cpu的兼容so库,所以video组件在标准基座运行时无法在x86 cpu的设备上运行(常见于模拟器)。如需支持x86 cpu,请在manifest里配置`abiFilters`,打包或自定义基座后生效 [详见](https://uniapp.dcloud.net.cn/uni-app-x/manifest.html#android) -- 视频文件需在static目录(项目下或uni_modules下都支持static目录)下,或者import导入文件,否则文件不会被copy到最终的包中,导致无法访问。 +- 本地视频文件,或者静态引用(HBuilderX 3.97+)、或者import导入文件、或者在static目录下(项目下或uni_modules下都支持static目录),否则文件不会被copy到最终的包中,导致无法访问。 - 默认拦截触摸事件,目前会导致父组件无法响应触摸事件 diff --git a/docs/uni-app-x/css/readme.md b/docs/uni-app-x/css/readme.md index ce06e6fb9fb7b9082f4661f900a79b49bc7c97f3..d2d50471a6baa752e4e5758eae739591ff4ed647 100644 --- a/docs/uni-app-x/css/readme.md +++ b/docs/uni-app-x/css/readme.md @@ -430,4 +430,4 @@ uni-app x的css的样式不继承规则,虽然与web有差异,其实只是 ## Bug & Tips -- 动态创建的根组件,`class` 样式不生效,暂时可通过外层包裹 `view` 解决。 +- 动态创建的根组件,`class` 样式不生效,暂时可通过外层包裹 `view` 解决。此bug已于HBuilderX 3.97+修复