From c28e3010c858fecfc732f7e6e00b0e1b1b35b79e Mon Sep 17 00:00:00 2001 From: wanganxp <wanganxp@gmail.com> Date: Thu, 7 Sep 2023 06:13:13 +0800 Subject: [PATCH] x --- docs/collocation/main.md | 8 ++++---- docs/tutorial/platform.md | 33 ++++++++++++++++-------------- docs/uni-app-x/_sidebar.md | 3 ++- docs/uni-app-x/api.md | 8 ++++---- docs/uni-app-x/compiler/README.md | 2 ++ docs/uni-app-x/component/common.md | 2 ++ docs/uni-app-x/component/image.md | 14 +++++++++---- docs/uts/_sidebar.md | 2 +- 8 files changed, 43 insertions(+), 29 deletions(-) diff --git a/docs/collocation/main.md b/docs/collocation/main.md index 83462f709..a99d18e06 100644 --- a/docs/collocation/main.md +++ b/docs/collocation/main.md @@ -55,16 +55,16 @@ export function createApp() { ## 代ç æ—¶åº å¼€å‘者写的代ç ,在应用å¯åŠ¨æ—¶ï¼ŒæŒ‰å¦‚下时åºåŠ 载: -1. main.js/uts çš„ `export function createApp() {}` 外的代ç ã€ä»»ä½•é¡µé¢çš„scriptä¸`export default {}`外的代ç +1. main.js/uts çš„ `export function createApp() {}` 外的代ç ã€ä»»ä½•é¡µé¢/组件的scriptä¸`export default {}`外的代ç 2. main.js/uts çš„ `export function createApp() {}` ä¸çš„代ç 3. app.vue/uvueä¸onLaunch的代ç 4. 首页的onLoad 5. 首页的onReady -å¼€å‘者需谨慎在main.js/utsã€é¡µé¢scriptä¸`export default {}`外ã€å’ŒonLaunchä¸ç¼–写代ç : -1. 这些的代ç 都会影å“å¯åŠ¨é€Ÿåº¦ +å¼€å‘者需谨慎在main.js/utsã€é¡µé¢/组件scriptä¸`export default {}`外ã€å’ŒonLaunchä¸ç¼–写代ç : +1. 这些的代ç 都会影å“å¯åŠ¨é€Ÿåº¦ï¼ˆå®šä¹‰typeä¸ä¼šï¼Œtype是使用时æ‰åŠ 载) 2. 执行太早,很多功能和APIæ— æ³•ä½¿ç”¨ï¼Œéœ€trycatch。尤其是与界é¢ç›¸å…³çš„éƒ½æ— æ³•ä½¿ç”¨ï¼Œæ¤æ—¶é¦–页都还没有创建。 -3. main.js/utsã€é¡µé¢scriptä¸`export default {}`外的代ç ,其创建的å˜é‡åœ¨åº”用å˜æ´»æ—¶ä¸€ç›´å æ®ç€å†…å˜ã€‚ +3. main.js/utsã€é¡µé¢scriptä¸`export default {}`外的代ç ,其创建的å˜é‡åœ¨åº”用å˜æ´»æ—¶ä¸€ç›´å æ®ç€å†…å˜ï¼Œä¸ä¼šè·Ÿéšé¡µé¢å…³é—而回收 ## æ’件 diff --git a/docs/tutorial/platform.md b/docs/tutorial/platform.md index 6fe8ad11a..a2e3501da 100644 --- a/docs/tutorial/platform.md +++ b/docs/tutorial/platform.md @@ -1,11 +1,12 @@ ## 跨端兼容 -uni-app 已将常用的组件ã€JS API å°è£…到框架ä¸ï¼Œå¼€å‘者按照 uni-app 规范开å‘å³å¯ä¿è¯å¤šå¹³å°å…¼å®¹ï¼Œå¤§éƒ¨åˆ†ä¸šåŠ¡å‡å¯ç›´æŽ¥æ»¡è¶³ã€‚ +uni-app 已将常用的组件ã€APIå°è£…到框架ä¸ï¼Œå¼€å‘者按照 uni-app 规范开å‘å³å¯ä¿è¯å¤šå¹³å°å…¼å®¹ï¼Œå¤§éƒ¨åˆ†ä¸šåŠ¡å‡å¯ç›´æŽ¥æ»¡è¶³ã€‚ 但æ¯ä¸ªå¹³å°æœ‰è‡ªå·±çš„ä¸€äº›ç‰¹æ€§ï¼Œå› æ¤ä¼šå˜åœ¨ä¸€äº›æ— 法跨平å°çš„情况。 - 大é‡å†™ if elseï¼Œä¼šé€ æˆä»£ç 执行性能低下和管ç†æ··ä¹±ã€‚ - 编译到ä¸åŒçš„工程åŽäºŒæ¬¡ä¿®æ”¹ï¼Œä¼šè®©åŽç»å‡çº§å˜çš„很麻烦。 +- 为æ¯ä¸ªå¹³å°é‡å†™ï¼Œæ˜Žæ˜Žä¸»ä¸šåŠ¡é€»è¾‘åˆä¸€æ · 在 C è¯è¨€ä¸ï¼Œé€šè¿‡ #ifdefã€#ifndef çš„æ–¹å¼ï¼Œä¸º windowsã€mac ç‰ä¸åŒ os 编译ä¸åŒçš„代ç 。 ``uni-app`` å‚考这个æ€è·¯ï¼Œä¸º ``uni-app`` æ供了æ¡ä»¶ç¼–译手段,在一个工程里优雅的完æˆäº†å¹³å°ä¸ªæ€§åŒ–实现。 @@ -14,27 +15,28 @@ uni-app 已将常用的组件ã€JS API å°è£…到框架ä¸ï¼Œå¼€å‘者按照 uni- æ¡ä»¶ç¼–è¯‘æ˜¯ç”¨ç‰¹æ®Šçš„æ³¨é‡Šä½œä¸ºæ ‡è®°ï¼Œåœ¨ç¼–è¯‘æ—¶æ ¹æ®è¿™äº›ç‰¹æ®Šçš„注释,将注释里é¢çš„代ç 编译到ä¸åŒå¹³å°ã€‚ -**写法:**以 <span style="color:#859900;"> #ifdef</span> 或 <span style="color:#859900;"> #ifndef</span> åŠ <b style="color:#268BD2"> %PLATFORM%</b> 开头,以 <span style="color:#859900;">#endif</span> 结尾。 -* <span style="color:#859900;"> #ifdef</span>:if defined 仅在æŸå¹³å°å˜åœ¨ -* <span style="color:#859900;"> #ifndef</span>:if not defined 除了æŸå¹³å°å‡å˜åœ¨ -* <b style="color:#268BD2"> %PLATFORM%</b>:平å°å称 +**写法:** +以 `#ifdef` 或 `#ifndef` åŠ `%PLATFORM%` 开头,以 `#endif` 结尾。 +* `#ifdef`:if defined 仅在æŸå¹³å°å˜åœ¨ +* `#ifndef`:if not defined 除了æŸå¹³å°å‡å˜åœ¨ +* `%PLATFORM%`:平å°å称 -<table><thead><tr><th>æ¡ä»¶ç¼–译写法</th><th>说明</th></tr></thead><tbody><tr><td><div class="code"><span class="token comment"><span style="color:#859900;"> #ifdef</span><b style="color:#268BD2"> APP-PLUS</b></span><br>需æ¡ä»¶ç¼–译的代ç <br><span class="token comment"> <span style="color:#859900;"> #endif</span></span></div></td><td>仅出现在 App å¹³å°ä¸‹çš„代ç </td></tr><tr><td><div class="code"><span class="token comment"> <span style="color:#859900;"> #ifndef</span><b style="color:#268BD2"> H5</b></span><br>需æ¡ä»¶ç¼–译的代ç <br><span class="token comment"> <span style="color:#859900;"> #endif</span></span></div></td><td>除了 H5 å¹³å°ï¼Œå…¶å®ƒå¹³å°å‡å˜åœ¨çš„代ç </td></tr><tr><td><div class="code"><span class="token comment"> <span style="color:#859900;"> #ifdef</span><b style="color:#268BD2"> H5</b></span><span style="color:#859900;"> || </span><b style="color:#268BD2">MP-WEIXIN</b><br>需æ¡ä»¶ç¼–译的代ç <br><span class="token comment"> <span style="color:#859900;"> #endif</span></span></div></td><td>在 H5 å¹³å°æˆ–微信å°ç¨‹åºå¹³å°å˜åœ¨çš„代ç (这里åªæœ‰||,ä¸å¯èƒ½å‡ºçŽ°&&ï¼Œå› ä¸ºæ²¡æœ‰äº¤é›†ï¼‰</td></tr></tbody></table> +<table><thead><tr><th>æ¡ä»¶ç¼–译写法</th><th>说明</th></tr></thead><tbody><tr><td><div class="code"><span class="token comment"><span style="color:#859900;"> #ifdef</span><b style="color:#268BD2"> APP-PLUS</b></span><br>需æ¡ä»¶ç¼–译的代ç <br><span class="token comment"> <span style="color:#859900;"> #endif</span></span></div></td><td>仅出现在 App å¹³å°ä¸‹çš„代ç </td></tr><tr><td><div class="code"><span class="token comment"> <span style="color:#859900;"> #ifndef</span><b style="color:#268BD2"> H5</b></span><br>需æ¡ä»¶ç¼–译的代ç <br><span class="token comment"> <span style="color:#859900;"> #endif</span></span></div></td><td>除了 H5 å¹³å°ï¼Œå…¶å®ƒå¹³å°å‡å˜åœ¨çš„代ç (注æ„ifåŽé¢æœ‰ä¸ªn)</td></tr><tr><td><div class="code"><span class="token comment"> <span style="color:#859900;"> #ifdef</span><b style="color:#268BD2"> H5</b></span><span style="color:#859900;"> || </span><b style="color:#268BD2">MP-WEIXIN</b><br>需æ¡ä»¶ç¼–译的代ç <br><span class="token comment"> <span style="color:#859900;"> #endif</span></span></div></td><td>在 H5 å¹³å°æˆ–微信å°ç¨‹åºå¹³å°å˜åœ¨çš„代ç (这里åªæœ‰||,ä¸å¯èƒ½å‡ºçŽ°&&ï¼Œå› ä¸ºæ²¡æœ‰äº¤é›†ï¼‰</td></tr></tbody></table> <b style="color:#268BD2"> %PLATFORM%</b> **å¯å–值如下:** -|值|生效æ¡ä»¶|说明| +|值|生效æ¡ä»¶|版本支æŒ| |:-|:-|:-| -|VUE3|[详情](https://ask.dcloud.net.cn/article/37834) (uni-app js引擎版)|HBuilderX 3.2.0+| +|VUE3|uni-app js引擎版用于区分vue2å’Œ3,[详情](https://ask.dcloud.net.cn/article/37834) |HBuilderX 3.2.0+| +|UNI-APP-X|用于区分是å¦æ˜¯uni-app x项目 [详情](#UNI-APP-X)|HBuilderX 3.9.0+| |APP|App|| -|APP-PLUS|App(uni-app js引擎版)|| +|APP-PLUS|uni-app js引擎版编译为Appæ—¶|| |APP-PLUS-NVUE或APP-NVUE|App nvue 页é¢|| |APP-ANDROID|App Android å¹³å° ä»…é™ uts文件|| |APP-IOS|App iOS å¹³å° ä»…é™ uts文件|| -|UNI-APP-X|uni-app x项目 [详情](#UNI-APP-X)|HBuilderX 3.9.0+| |H5|H5(推è使用 `WEB`)|| -|WEB|H5|HBuilderX 3.6.3+| +|WEB|web|HBuilderX 3.6.3+| |MP-WEIXIN|微信å°ç¨‹åº|| |MP-ALIPAY|支付å®å°ç¨‹åº|| |MP-BAIDU|百度å°ç¨‹åº|| @@ -51,17 +53,18 @@ uni-app 已将常用的组件ã€JS API å°è£…到框架ä¸ï¼Œå¼€å‘者按照 uni- **支æŒçš„文件** -* .vue -* .js +* .vue/.nvue/.uvue +* .js/.uts * .css * pages.json * å„预编译è¯è¨€æ–‡ä»¶ï¼Œå¦‚:.scssã€.lessã€.stylusã€.tsã€.pug **注æ„:** -* æ¡ä»¶ç¼–译是利用注释实现的,在ä¸åŒè¯æ³•é‡Œæ³¨é‡Šå†™æ³•ä¸ä¸€æ ·ï¼Œjs使用 ``// 注释``ã€css 使用 ``/* 注释 */``ã€vue/nvue 模æ¿é‡Œä½¿ç”¨ ``<!-- 注释 -->``ï¼› +* æ¡ä»¶ç¼–译是利用注释实现的,在ä¸åŒè¯æ³•é‡Œæ³¨é‡Šå†™æ³•ä¸ä¸€æ ·ï¼Œjs/uts使用 ``// 注释``ã€css 使用 ``/* 注释 */``ã€vue/nvue/uvue 模æ¿é‡Œä½¿ç”¨ ``<!-- 注释 -->``ï¼› * æ¡ä»¶ç¼–译APP-PLUS包å«APP-NVUEå’ŒAPP-VUE,APP-PLUS-NVUEå’ŒAPP-NVUE没什么区别,为了简写åŽé¢å‡ºäº†APP-NVUE ï¼› * 使用æ¡ä»¶ç¼–译请ä¿è¯`编译å‰`å’Œ`编译åŽ`文件的è¯æ³•æ£ç¡®æ€§ï¼Œå³è¦ä¿éšœæ— 论æ¡ä»¶ç¼–译是å¦ç”Ÿæ•ˆéƒ½èƒ½é€šè¿‡è¯æ³•æ ¡éªŒã€‚比如:json文件ä¸ä¸èƒ½æœ‰å¤šä½™çš„逗å·ï¼Œjsä¸ä¸èƒ½é‡å¤å¯¼å…¥ï¼› +* 对于未定义平å°å称,å¯èƒ½æ˜¯å称写错了,也å¯èƒ½æ˜¯ä½Žç‰ˆæœ¬HBuilderX还ä¸è®¤è¯†è¿™ä¸ªå¹³å°ã€‚æ¤æ—¶çš„æ¡ä»¶ç¼–译,`#ifdef` ä¸çš„代ç ä¸ä¼šç”Ÿæ•ˆï¼Œè€Œ `#ifndef` ä¸çš„代ç 会生效; ::: preview @@ -123,7 +126,7 @@ uni-app 已将常用的组件ã€JS API å°è£…到框架ä¸ï¼Œå¼€å‘者按照 uni- ::: * `VUE3` 需è¦åœ¨é¡¹ç›®çš„ `manifest.json` æ–‡ä»¶æ ¹èŠ‚ç‚¹é…ç½® `"vueVersion" : "3"`ï¼› -* 对于未定义平å°å称的æ¡ä»¶ç¼–译,`#ifdef` ä¸çš„代ç ä¸ä¼šç”Ÿæ•ˆï¼Œè€Œ `#ifndef` ä¸çš„代ç 会生效; + <pre v-pre="" data-lang="javascript"> <code class="lang-javascript code"><span class="token comment">//<span style="color:#859900;"> #ifdef</span><b style="color:#268BD2"> %PLATFORM%</b></span> diff --git a/docs/uni-app-x/_sidebar.md b/docs/uni-app-x/_sidebar.md index 24676e24b..708b33bf9 100644 --- a/docs/uni-app-x/_sidebar.md +++ b/docs/uni-app-x/_sidebar.md @@ -3,7 +3,7 @@ * [与jså¼€å‘的差别](tutorial/codegap.md) * [requestè”网教程](tutorial/request.md) * [全局å˜é‡ä¸ŽçŠ¶æ€ç®¡ç†](tutorial/store.md) -* 编译器 +* [编译器] * [概述](compiler/README.md) * [æ¡ä»¶ç¼–译](/tutorial/platform.md) * 全局文件 @@ -42,6 +42,7 @@ * [web-view](component/web-view.md) * [animation-view](component/animation-view.md) * API + * [概述](api.md) * 基础 * [getApp](api/getApp.md) * [getCurrentPages](api/getCurrentPages.md) diff --git a/docs/uni-app-x/api.md b/docs/uni-app-x/api.md index 2fcc6d532..983e30b77 100644 --- a/docs/uni-app-x/api.md +++ b/docs/uni-app-x/api.md @@ -4,7 +4,7 @@ uni-app x支æŒçš„API包括: - utsçš„api [详è§](/uts/buildin-object-api/global.md) - uni.xxx的内置api。è§å·¦ä¾§ - uniCloud.xxx的内置api。è§å·¦ä¾§ - -由于utså¯ä»¥ç›´æŽ¥è°ƒç”¨Androidå’ŒiOSçš„API,所以os和三方sdk的能力都å¯ä»¥åœ¨utsä¸è°ƒç”¨ã€‚ - -一般原生能力建议å°è£…为[uni_modules](/plugin/uni_modules.md) \ No newline at end of file +- Domçš„api [详è§](dom/README.md) +- 原生API + * 由于utså¯ä»¥ç›´æŽ¥è°ƒç”¨Androidå’ŒiOSçš„API,所以os和三方sdk的能力都å¯ä»¥åœ¨utsä¸è°ƒç”¨ã€‚ + * 一般原生能力建议å°è£…为[uni_modules](/plugin/uni_modules.md)å½¢å¼çš„[utsæ’件](/plugin/uts-plugin.md)。 \ No newline at end of file diff --git a/docs/uni-app-x/compiler/README.md b/docs/uni-app-x/compiler/README.md index a7f434ca0..873712d37 100644 --- a/docs/uni-app-x/compiler/README.md +++ b/docs/uni-app-x/compiler/README.md @@ -8,6 +8,8 @@ uvue编译器是在Vite基础上进行扩展开å‘的。 它的大部分特性(如æ¡ä»¶ç¼–译)和é…置项(如环境å˜é‡ï¼‰ä¸Ž`uni-app`çš„vue3编译器一致,[详è§](https://uniapp.dcloud.net.cn/tutorial/compiler.html) +支æŒlessã€sassã€scssç‰css预编译。 + #### ç¼–è¯‘ç¼“å˜ @cache `uni-app x`编译器引入了编译缓å˜æœºåˆ¶ï¼Œä»¥ä¼˜åŒ–å¼€å‘体验。 diff --git a/docs/uni-app-x/component/common.md b/docs/uni-app-x/component/common.md index ada9c1cfb..c79a82266 100644 --- a/docs/uni-app-x/component/common.md +++ b/docs/uni-app-x/component/common.md @@ -20,6 +20,8 @@ - @click //与tapç‰ä»· - @longpress +在多点触摸的å±å¹•ä¸Šï¼Œtouch事件返回数组,包å«äº†æ¯ä¸ªtouch点对应的xã€yåæ ‡ã€‚ + ### 冒泡事件系统 DOM事件主è¦æœ‰ä¸‰ä¸ªé˜¶æ®µï¼šæ•èŽ·é˜¶æ®µã€ç›®æ ‡é˜¶æ®µå’Œå†’泡阶段。 diff --git a/docs/uni-app-x/component/image.md b/docs/uni-app-x/component/image.md index 4d2f24293..7c99a1b16 100644 --- a/docs/uni-app-x/component/image.md +++ b/docs/uni-app-x/component/image.md @@ -18,21 +18,27 @@ ### src路径支æŒè¯´æ˜Ž - 本地路径/staticæ–¹å¼ + 由于uni-app编译时,åªæŠŠ/static目录下的é™æ€èµ„æºcopy到appä¸ï¼Œæ‰€ä»¥srcå‡éœ€æŒ‡å‘/static目录下。 + 其他目录的图片由于ä¸ä¼šè¢«æ‰“åŒ…è¿›åŽ»ï¼Œæ‰€ä»¥æ— æ³•è®¿é—®ã€‚æœ¬åœ°è·¯å¾„çš„å¤§å°å†™ä¸æ•æ„Ÿã€‚ + - 本地ç»å¯¹è·¯å¾„file:///æ–¹å¼ + 形如`file:///storage/emulated/0/Android/data/io.dcloud.uniappx/apps/__UNI__4517034/www/static/test-image/logo.png`。 + 访问本应用内的资æºæ—¶æ— 需使用本方å¼ï¼ŒæŽ¨è使用/staticæ–¹å¼ã€‚上述地å€å—包åã€appidå½±å“。 + file:///æ–¹å¼ä¸€èˆ¬ç”¨äºŽdownloadç‰å…¬å…±ç›®å½•ã€‚使用å‰éœ€ç¡®ä¿æ‹¥æœ‰ç›¸å…³æƒé™ã€‚ + - 支æŒç½‘络路径 + 支æŒhttpã€https。 - image组件内部使用facebookçš„fresco库,自带缓å˜ç–略,也会自动清ç†ç¼“å˜ã€‚ + + image组件内部使用facebookçš„[fresco](https://github.com/facebook/fresco)库(2.5.0),自带缓å˜ç–略,也会自动清ç†ç¼“å˜ã€‚ <!-- UTSCOMJSON.image.compatibility --> -#### Appå¹³å° -- App-Androidå¹³å°image组件使用Fresco图片库实现:[com.facebook.fresco:fresco:2.5.0](https://github.com/facebook/fresco) - ### tips 在error事件里监å¬æŠ¥é”™ï¼Œå¹¶é‡æ–°è®¾ç½®image组件的src,å¯å®žçŽ°è‡ªå®šä¹‰é”™è¯¯å›¾ã€‚[详è§ç¤ºä¾‹ä»£ç ](https://gitcode.net/dcloud/hello-uni-app-x/-/blob/master/pages/component/image/image-path.uvue) diff --git a/docs/uts/_sidebar.md b/docs/uts/_sidebar.md index 9b2c8e161..1a0e92942 100644 --- a/docs/uts/_sidebar.md +++ b/docs/uts/_sidebar.md @@ -26,7 +26,7 @@ * [Console](buildin-object-api/console.md) * [全局](buildin-object-api/global.md) * [关键è¯](keywords.md) -* [å¦ä¹ 资料](learning.md) +<!-- * [å¦ä¹ 资料](learning.md) --> * utsæ’件 * [utsæ’件开å‘入门](/plugin/uts-plugin.md) * [uts页é¢ç»„件开å‘入门](/plugin/uts-component.md) -- GitLab