1- # 常见问题FAQ
1+ # 常见问题 FAQ
22
33本节介绍在开发过程当中遇到的部分 ** 常见问题** 以及 ** 解决办法**
44
77目前支持 微信小程序、支付宝小程序、钉钉小程序、H5、APP 等平台。
88
99## 组件库有没有提供可以单独引入的组件?
10- 目前是没有的,首先在插件市场缺少` CI/CD ` 工具,无法实现自动化发布,维护一套单独引入的组件费时费力,其次组件库提供的安装方式均可以实现按需引入,所以是无需提供单独引入的组件的。
1110
11+ 目前是没有的,首先在插件市场缺少` CI/CD ` 工具,无法实现自动化发布,维护一套单独引入的组件费时费力,其次组件库提供的安装方式均可以实现按需引入,所以是无需提供单独引入的组件的。
1212
1313## 如何开启暗黑模式?
1414
1515` Wot Design Uni ` 支持深色模式、主题定制等能力,详见[ ConfigProvider 全局配置] ( /component/config-provider.html ) 组件。
1616
17-
1817## 小程序样式隔离
1918
2019### 在页面中使用 Wot Design Uni 组件时,可直接在页面的样式文件中覆盖样式
20+
2121``` vue
2222<wd-button type="primary">主要按钮</wd-button>
2323```
@@ -56,7 +56,7 @@ export default {
5656
5757什么?还有人想问:这样写还我怎么使用` script setup ` 啊!
5858
59- *** 简单,这样写两个就行了 * **
59+ ** _ 简单,这样写两个就行了 _ **
6060
6161``` ts
6262< script lang = " ts" >
@@ -72,11 +72,13 @@ export default {
7272```
7373
7474## 小程序使用外部样式类
75+
7576Wot Design Uni 开放了大量的自定义样式类供开发者使用,具体的样式类名称可查阅对应组件的“外部样式类”部分。需要注意的是普通样式类和自定义样式类的优先级是未定义的,因此使用时请添加` !important ` 以保证外部样式类的优先级。
7677
7778``` vue
7879<wd-button custom-class="custom-button" type="primary">主要按钮</wd-button>
7980```
81+
8082``` scss
8183/* 组件样式 */
8284:deep(.custom-button ) {
@@ -85,7 +87,8 @@ Wot Design Uni 开放了大量的自定义样式类供开发者使用,具体
8587```
8688
8789## 小程序自定义组件渲染问题
88- 微信/QQ/百度/抖音这四家小程序,自定义组件在渲染时会比App/H5端多一级节点,下面以` divider ` 组件举例:
90+
91+ 微信/QQ/百度/抖音这四家小程序,自定义组件在渲染时会比 App/H5 端多一级节点,下面以` divider ` 组件举例:
8992
9093``` vue
9194<!-- 使用 -->
@@ -101,11 +104,15 @@ Wot Design Uni 开放了大量的自定义样式类供开发者使用,具体
101104```
102105
103106### 解决办法
104- 在微信端可以使用[ virtualHost] ( https://uniapp.dcloud.net.cn/tutorial/vue-api.html#%E5%85%B6%E4%BB%96%E9%85%8D%E7%BD%AE ) 解决,` virtualHost ` 设为` true ` 之后会将自定义节点设置成虚拟的,更加接近Vue组件的表现,可以去掉微信小程序自定义组件多出的最外层标签,启用后还可以通过 [ mergeVirtualHostAttributes] ( https://uniapp.dcloud.net.cn/collocation/manifest.html#mp-weixin ) 合并合并组件虚拟节点外层属性。
107+
108+ 在微信端可以使用[ virtualHost] ( https://uniapp.dcloud.net.cn/tutorial/vue-api.html#%E5%85%B6%E4%BB%96%E9%85%8D%E7%BD%AE ) 解决,` virtualHost ` 设为` true ` 之后会将自定义节点设置成虚拟的,更加接近 Vue 组件的表现,可以去掉微信小程序自定义组件多出的最外层标签,启用后还可以通过 [ mergeVirtualHostAttributes] ( https://uniapp.dcloud.net.cn/collocation/manifest.html#mp-weixin ) 合并合并组件虚拟节点外层属性。
109+
105110``` js
106111// vue2使用virtualHost
107112export default {
108- data (){ return { } },
113+ data () {
114+ return {}
115+ },
109116 options: {
110117 virtualHost: true
111118 }
@@ -125,7 +132,9 @@ export default {
125132< script lang = " ts" setup >
126133< / script >
127134```
128- ### 启用virtualHost效果
135+
136+ ### 启用 virtualHost 效果
137+
129138这里我们还是以` divider ` 组件举例:
130139
131140``` vue
@@ -139,20 +148,39 @@ export default {
139148<view class="wd-divider"></view>
140149```
141150
142-
143151## 如何定制主题?
152+
144153我们为每个组件提供了` css 变量 ` ,可以参考[ config-provider] ( ../component/config-provider ) 组件的使用介绍来定制主题。
145154
146- ## Toast和MessageBox组件调用无效果?
155+ ## Toast 和 MessageBox 组件调用无效果?
156+
157+ 首先要检查一下用法是否正确,` uni-app ` 平台不支持全局挂载组件,所以` Message ` 、` Toast ` 等组件仍需在 SFC 中显式使用,例如:
147158
148- 首先要检查一下用法是否正确,` uni-app ` 平台不支持全局挂载组件,所以``` Message ``` 、``` Toast ``` 等组件仍需在SFC中显式使用,例如:
149- ``` html
159+ ``` html
150160<wd-toast ></wd-toast >
151161```
152162
153- ``` Message ``` 、``` Toast ``` 的函数式调用是基于` provide/inject ` 实现的,所以你的调用要确保在` setup ` 中。
163+ ` Message ` 、` Toast ` 的函数式调用是基于` provide/inject ` 实现的,所以你的调用要确保在` setup ` 中。
164+
165+ ## 编译到支付宝小程序 Popup 组件的遮罩无法显示?
166+
167+ uni-app 3.99.2023122704 将支付宝小程序的` styleIsolation ` 默认值设置为了` apply-shared ` ,而支付宝小程序默认的` styleIsolation ` 为` shared ` ,所以导致更新到` 3.99.2023122704 ` 版本后,支付宝小程序自定义组件样式穿透无法生效,参见[ issue] ( https://ask.dcloud.net.cn/question/187142 ) 。
168+ 解决办法:在` mainfest.json ` 中设置` styleIsolation ` 为` shared ` 。
169+
170+ ``` json
171+ {
172+ // ...
173+ "mp-alipay" : {
174+ // ...
175+ "styleIsolation" : " shared"
176+ // ...
177+ }
178+ // ...
179+ }
180+ ```
154181
155182## 如何快速解决你的问题?
183+
156184[ 提问的智慧] ( https://lug.ustc.edu.cn/wiki/doc/smart-questions/ ) ,可以帮助你快速提出正确的问题,获得更快的解答。
157185
158186## 关于我们
0 commit comments