Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
DCloud
unidocs-zh
提交
11ae41b3
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看板
提交
11ae41b3
编写于
10月 13, 2021
作者:
Q
qiang
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
docs: 移除已过期编译模式文档
上级
59554fbd
变更
16
展开全部
隐藏空白更改
内联
并排
Showing
16 changed file
with
27 addition
and
805 deletion
+27
-805
docs/api/a-d/rewarded-video.md
docs/api/a-d/rewarded-video.md
+0
-1
docs/api/log.md
docs/api/log.md
+0
-1
docs/api/system/theme.md
docs/api/system/theme.md
+1
-2
docs/api/window/window.md
docs/api/window/window.md
+1
-1
docs/collocation/frame/log.md
docs/collocation/frame/log.md
+0
-1
docs/collocation/frame/window.md
docs/collocation/frame/window.md
+2
-2
docs/component/ad.md
docs/component/ad.md
+0
-1
docs/component/input.md
docs/component/input.md
+2
-2
docs/component/textarea.md
docs/component/textarea.md
+1
-1
docs/component/web-view.md
docs/component/web-view.md
+3
-3
docs/frame.md
docs/frame.md
+3
-3
docs/matter.md
docs/matter.md
+1
-6
docs/nvue-outline.md
docs/nvue-outline.md
+1
-1
docs/performance.md
docs/performance.md
+2
-3
docs/use.md
docs/use.md
+0
-767
docs/vue-api.md
docs/vue-api.md
+10
-10
未找到文件。
docs/api/a-d/rewarded-video.md
浏览文件 @
11ae41b3
...
...
@@ -868,7 +868,6 @@ code|message|
-
多次调用
`RewardedVideoAd.onLoad()`
、
`RewardedVideoAd.onError()`
、
`RewardedVideoAd.onClose()`
等方法监听广告事件会产生多次事件回调,建议在创建广告后监听一次即可。
-
为避免滥用广告资源,目前每个用户每天可观看激励式视频广告的次数有限,建议展示广告按钮前先判断广告是否拉取成功。
-
App平台,建议每个广告商每个设备每天调用次数不超过
`15`
,中间要有间隔时间,否则可能触发系统的反作弊策略导致流量收益下降。
-
老版非V3编译项目不支持激励视频。
### 案例参考
-
[
全民董事长
](
https://android.myapp.com/myapp/detail.htm?apkName=com.dlt.qmdsz&info=DF3F955B42F0B77FECA41F03E7F77C8D
)
...
...
docs/api/log.md
浏览文件 @
11ae41b3
...
...
@@ -17,4 +17,3 @@
-
不同平台对于 console 方法的支持存在差异,建议在开发过程中只使用文档中提到的方法。
-
HBuilderX中有2个重要的代码块,敲
`clog`
:可直接输出
`console.log()`
;敲
`clogv`
:可输出
`console.log(": " + );`
,并且出现双光标,方便把变量名称和值同时打印出来。
-
HBuilderX 1.9.7 以上在App端支持打印对象信息到控制台。老版本可使用
`clogj`
代码块将json对象转为字符串打印出来。
docs/api/system/theme.md
浏览文件 @
11ae41b3
...
...
@@ -17,5 +17,4 @@ uni.onThemeChange(function (res) {
```
**注意**
-
自定义基座生效
-
仅 V3 编译支持,参考 manifest.json 配置
\ No newline at end of file
-
自定义基座生效
\ No newline at end of file
docs/api/window/window.md
浏览文件 @
11ae41b3
...
...
@@ -39,7 +39,7 @@ export default {
},
onLoad() {
// #ifdef APP-PLUS
const currentWebview = this.$scope.$getAppWebview(); //此对象相当于html5plus里的plus.webview.currentWebview()。在uni-app里vue页面直接使用plus.webview.currentWebview()无效
,非v3编译模式使用this.$mp.page.$getAppWebview()
const currentWebview = this.$scope.$getAppWebview(); //此对象相当于html5plus里的plus.webview.currentWebview()。在uni-app里vue页面直接使用plus.webview.currentWebview()无效
currentWebview.setBounce({position:{top:'100px'},changeoffset:{top:'0px'}}); //动态重设bounce效果
// #endif
}
...
...
docs/collocation/frame/log.md
浏览文件 @
11ae41b3
...
...
@@ -17,4 +17,3 @@
-
不同平台对于 console 方法的支持存在差异,建议在开发过程中只使用文档中提到的方法。
-
HBuilderX中有2个重要的代码块,敲
`clog`
:可直接输出
`console.log()`
;敲
`clogv`
:可输出
`console.log(": " + );`
,并且出现双光标,方便把变量名称和值同时打印出来。
-
HBuilderX 1.9.7 以上在App端支持打印对象信息到控制台。老版本可使用
`clogj`
代码块将json对象转为字符串打印出来。
docs/collocation/frame/window.md
浏览文件 @
11ae41b3
...
...
@@ -12,7 +12,7 @@ console.log(app.globalData)
**注意:**
- 不要在定义于 `App()` 内的函数中,或调用 `App` 前调用 `getApp()` ,可以通过 `this.$scope` 获取对应的app实例
- 通过 `getApp()` 获取实例之后,不要私自调用生命周期函数。
-
v3模式加速了首页`nvue`的启动速度,当在首页`nvue`中使用`getApp()`不一定可以获取真正的`App`对象。对此v3版本
提供了`const app = getApp({allowDefault: true})`用来获取原始的`App`对象,可以用来在首页对`globalData`等初始化
-
当在首页`nvue`中使用`getApp()`不一定可以获取真正的`App`对象。对此
提供了`const app = getApp({allowDefault: true})`用来获取原始的`App`对象,可以用来在首页对`globalData`等初始化
### getCurrentPages()
...
...
@@ -54,7 +54,7 @@ export default {
},
onLoad() {
// #ifdef APP-PLUS
const currentWebview = this.$scope.$getAppWebview(); //此对象相当于html5plus里的plus.webview.currentWebview()。在uni-app里vue页面直接使用plus.webview.currentWebview()无效
,非v3编译模式使用this.$mp.page.$getAppWebview()
const currentWebview = this.$scope.$getAppWebview(); //此对象相当于html5plus里的plus.webview.currentWebview()。在uni-app里vue页面直接使用plus.webview.currentWebview()无效
currentWebview.setBounce({position:{top:'100px'},changeoffset:{top:'0px'}}); //动态重设bounce效果
// #endif
}
...
...
docs/component/ad.md
浏览文件 @
11ae41b3
...
...
@@ -83,7 +83,6 @@ App和微信小程序的ad组件没有type属性,可以用于banner,也可
-
app-nvue 的
`<recycle-list>`
组件内不支持嵌套
`<ad>`
-
广点通概率出现重复广告,可根据需求请求广告数据,推荐单次大于1条(plus.ad.getAds) 来降低重复率
-
HBuilderX2.8+版本Android平台更新穿山甲(今日头条)广告SDK后不再支持x86类型CPU,无法运行到x86类型cpu的模拟器。
-
app-vue 页面使用
`<ad>`
必须使用v3编译器。如果使用HBuilderX 2.7以下版本,需注意开启v3编译模式。2.7以上版本已经淘汰了其他模式,无需关心本条。
-
`<ad>`
组件测试广告位是上图下文,uniAD后台申请的广告位默认左图右文
-
HBuilderX标准基座真机运行测试信息流广告位标识(adpid)为:1111111111
...
...
docs/component/input.md
浏览文件 @
11ae41b3
...
...
@@ -104,7 +104,7 @@ App平台在iOS上,webview中的软键盘弹出时,默认在软键盘上方
this
.
$scope
.
$getAppWebview
().
setStyle
({
softinputNavBar
:
'
none
'
})
//this.$scope.$getAppWebview()相当于html5plus里的plus.webview.currentWebview()。在uni-app里vue页面直接使用plus.webview.currentWebview()无效
,非v3编译模式使用this.$mp.page.$getAppWebview()
//this.$scope.$getAppWebview()相当于html5plus里的plus.webview.currentWebview()。在uni-app里vue页面直接使用plus.webview.currentWebview()无效
```
如果是nvue页面,iOS默认就没有键盘上方的横条,无需任何设置。
...
...
@@ -129,7 +129,7 @@ App平台软键盘弹出有 adjustResize|adjustPan 两种模式,默认为 adju
-
小程序端在 input 聚焦期间,避免使用 css 动画。
-
H5平台只能在用户交互时修改 focus 生效。
-
如果遇到 focus 属性设置不生效的问题参考:
[
组件属性设置不生效解决办法
](
/vue-api?id=_4-组件属性设置不生效解决办法
)
-
如需禁止点击其他位置收起键盘的默认行为,可以监听
`touch`
事件并使用
`prevent`
修饰符(仅支持App
-v3
、H5,其他平台可以通过设置
`focus`
来使输入框重新获取焦点),例如在确认按钮上使用:
```@touchend.prevent="onTap"```
-
如需禁止点击其他位置收起键盘的默认行为,可以监听
`touch`
事件并使用
`prevent`
修饰符(仅支持App、H5,其他平台可以通过设置
`focus`
来使输入框重新获取焦点),例如在确认按钮上使用:
```@touchend.prevent="onTap"```
#### 关于软键盘收起的逻辑说明
...
...
docs/component/textarea.md
浏览文件 @
11ae41b3
...
...
@@ -87,7 +87,7 @@ export default {
-
H5 平台只能在用户交互时修改 focus 生效。
-
如果遇到 focus 属性设置不生效的问题参考:
[
组件属性设置不生效解决办法
](
/vue-api?id=_4-组件属性设置不生效解决办法
)
-
软键盘的弹出和收起逻辑,详见
[
input的文档
](
/component/input?id=app%E5%B9%B3%E5%8F%B0ios%E7%AB%AF%E8%BD%AF%E9%94%AE%E7%9B%98%E4%B8%8A%E6%96%B9%E6%A8%AA%E6%9D%A1%E5%8E%BB%E9%99%A4%E6%96%B9%E6%A1%88
)
-
如需禁止点击其他位置收起键盘的默认行为,可以监听
`touch`
事件并使用
`prevent`
修饰符(仅支持App
-v3
、H5,其他平台可以通过设置
`focus`
来使输入框重新获取焦点),例如在确认按钮上使用:
```@touchend.prevent="onTap"```
-
如需禁止点击其他位置收起键盘的默认行为,可以监听
`touch`
事件并使用
`prevent`
修饰符(仅支持App、H5,其他平台可以通过设置
`focus`
来使输入框重新获取焦点),例如在确认按钮上使用:
```@touchend.prevent="onTap"```
-
js中给textarea组件赋值为字符串,在字符串中加
\n
可实现换行。
```
...
...
docs/component/web-view.md
浏览文件 @
11ae41b3
...
...
@@ -67,7 +67,7 @@
-
App 端使用 uni.web-view.js 的最低版为
[
uni.webview.1.5.2.js
](
https://js.cdn.aliyun.dcloud.net.cn/dev/uni-app/uni.webview.1.5.2.js
)
-
App 平台同时支持网络网页和本地网页,但本地网页及相关资源(js、css等文件)必须放在
`uni-app 项目根目录->hybrid->html`
文件夹下或者
`static`
目录下,如下为一个加载本地网页的
`uni-app`
项目文件目录示例:
-
nvue
`web-view`
必须指定样式宽高
-
V3 编译模式,
网页向应用
`postMessage`
为实时消息
-
App
网页向应用
`postMessage`
为实时消息
-
app-nvue
`web-view`
默认没有大小,可以通过样式设置大小,如果想充满整个窗口,设置
`flex: 1`
即可,标题栏不会自动显示
`web-view`
页面中的 title。如果想充满整个窗口且想要显示标题推荐使用 vue 页面的
`web-view`
(默认充满屏幕不可控制大小), 想自定义
`web-view`
大小使用 nvue
`web-view`
<pre
v-pre=
""
data-lang=
""
>
...
...
@@ -294,7 +294,7 @@ var wv;//计划创建的webview
export
default
{
onReady
()
{
// #ifdef APP-PLUS
var
currentWebview
=
this
.
$scope
.
$getAppWebview
()
//此对象相当于html5plus里的plus.webview.currentWebview()。在uni-app里vue页面直接使用plus.webview.currentWebview()无效
,非v3编译模式使用this.$mp.page.$getAppWebview()
var
currentWebview
=
this
.
$scope
.
$getAppWebview
()
//此对象相当于html5plus里的plus.webview.currentWebview()。在uni-app里vue页面直接使用plus.webview.currentWebview()无效
setTimeout
(
function
()
{
wv
=
currentWebview
.
children
()[
0
]
wv
.
setStyle
({
top
:
150
,
height
:
300
})
...
...
@@ -322,7 +322,7 @@ export default {
top
:
uni
.
getSystemInfoSync
().
statusBarHeight
+
44
//放置在titleNView下方。如果还想在webview上方加个地址栏的什么的,可以继续降低TOP值
})
wv
.
loadURL
(
"
https://www.baidu.com
"
)
var
currentWebview
=
this
.
$scope
.
$getAppWebview
();
//此对象相当于html5plus里的plus.webview.currentWebview()。在uni-app里vue页面直接使用plus.webview.currentWebview()无效
,非v3编译模式使用this.$mp.page.$getAppWebview()
var
currentWebview
=
this
.
$scope
.
$getAppWebview
();
//此对象相当于html5plus里的plus.webview.currentWebview()。在uni-app里vue页面直接使用plus.webview.currentWebview()无效
currentWebview
.
append
(
wv
);
//一定要append到当前的页面里!!!才能跟随当前页面一起做动画,一起关闭
setTimeout
(
function
()
{
console
.
log
(
wv
.
getStyle
())
...
...
docs/frame.md
浏览文件 @
11ae41b3
...
...
@@ -460,7 +460,7 @@ uni-app 提供内置 CSS 变量
- 支持 base64 格式图片。
- 支持网络路径图片。
- 小程序不支持在css中使用本地文件,包括本地的背景图和字体文件。需以base64方式方可使用。
App端在v3模式以前,也有相同限制。v3编译模式起支持直接使用本地背景图和字体。
- 小程序不支持在css中使用本地文件,包括本地的背景图和字体文件。需以base64方式方可使用。
- 使用本地路径背景图片需注意:
1. 为方便开发者,在背景图片小于 40kb 时,``uni-app`` 编译到不支持本地背景图的平台时,会自动将其转化为 base64 格式;
2. 图片大于等于 40kb,会有性能问题,不建议使用太大的背景图,如开发者必须使用,则需自己将其转换为 base64 格式使用,或将其挪到服务器上,从网络地址引用。
...
...
@@ -481,7 +481,7 @@ uni-app 提供内置 CSS 变量
- 支持 base64 格式字体图标。
- 支持网络路径字体图标。
- 小程序不支持在css中使用本地文件,包括本地的背景图和字体文件。需以base64方式方可使用。
App端在v3模式以前,也有相同限制。v3编译模式起支持直接使用本地背景图和字体。
- 小程序不支持在css中使用本地文件,包括本地的背景图和字体文件。需以base64方式方可使用。
- 网络路径必须加协议头 ``https``。
- 从 [http://www.iconfont.cn](http://www.iconfont.cn) 上拷贝的代码,默认是没加协议头的。
- 从 [http://www.iconfont.cn](http://www.iconfont.cn) 上下载的字体文件,都是同名字体(字体名都叫iconfont,安装字体文件时可以看到),在nvue内使用时需要注意,此字体名重复可能会显示不正常,可以使用工具修改。
...
...
@@ -1232,7 +1232,7 @@ export default {
|App|H5|微信小程序|支付宝小程序|百度小程序|字节跳动小程序|QQ小程序|
|:-:|:-:|:-:|:-:|:-:|:-:|:-:|
|√(2.5.5+,仅支持vue
,并要求v3编译器
)|√|x|x|x|x|x|
|√(2.5.5+,仅支持vue)|√|x|x|x|x|x|
### 使用方式
...
...
docs/matter.md
浏览文件 @
11ae41b3
...
...
@@ -48,7 +48,7 @@ H5没有原生组件概念问题,非H5端有原生组件并引发了原生组
### H5正常但小程序异常的可能性
1.
同上
2.
v-html在h5和app-vue
(v3编译模式)
均支持,但小程序不支持
2.
v-html在h5和app-vue均支持,但小程序不支持
3.
小程序要求连接的网址都要配白名单
### 小程序正常但App异常的可能性
...
...
@@ -70,11 +70,6 @@ vue页面在App端的渲染引擎默认是系统webview(不是手机自带浏
### App正常,小程序、H5异常的可能性
1.
代码中使用了App端特有的plus、Native.js、subNVue、原生插件等功能
### App(v2)与App(v3)差异说明
1.
App(v2)默认template中使用了未定义或未初始化的数据,运行不会报错,且不影响后续节点渲染。App(v3)运行时,会直接告警,并报错(标准的vue渲染逻辑,同H5),且影响后续节点数据的渲染,错误信息通常显示为
`undefined is not an object, evaluating(xxx.xxx.xxx)`
2.
App(v2)默认隔离组件样式(组件间样式不会互相影响),App(v3)版本默认不隔离。目前发现开发者v2升级v3反馈的样式问题大多由此导致,v3版本将于
`2.6.14-alpha`
进行调整默认隔离组件间样式。
### 使用 Vue.js 的注意
1.
`uni-app`
基于
`Vue 2.0`
实现,开发者需注意Vue 1.0 -> 2.0 的使用差异,详见
[
从 Vue 1.x 迁移
](
https://cn.vuejs.org/v2/guide/migration.html
)
...
...
docs/nvue-outline.md
浏览文件 @
11ae41b3
...
...
@@ -34,7 +34,7 @@ nvue的组件和API写法与vue页面一致,其内置组件还比vue页面内
7. 如深度使用```map```组件,建议使用nvue。除了层级问题,App端nvue文件的map功能更完善,和小程序拉齐度更高,多端一致性更好。
8. 如深度使用```video```,建议使用nvue。比如如下2个场景:video内嵌到swiper中,以实现抖音式视频滑动切换,例子见[插件市场](https://ext.dcloud.net.cn/search?q=%E4%BB%BF%E6%8A%96%E9%9F%B3);nvue的视频全屏后,通过```cover-view```实现内容覆盖,比如增加文字标题、分享按钮。
9. 直播推流:nvue下有```live-pusher```组件,和小程序对齐,功能更完善,也没有层级问题。
10. 对App启动速度要求极致化。App端
v3编译器模式下,
如果首页使用nvue且在manifest里配置fast模式,那么App的启动速度可以控制在1秒左右。而使用vue页面的话,App的启动速度一般是3秒起,取决于你的代码性能和体积。
10. 对App启动速度要求极致化。App端如果首页使用nvue且在manifest里配置fast模式,那么App的启动速度可以控制在1秒左右。而使用vue页面的话,App的启动速度一般是3秒起,取决于你的代码性能和体积。
但注意,在某些场景下,nvue不如vue页面,如下:
1. ```canvas```。nvue的canvas性能不高,尤其是Android App平台,所以这个组件干脆没有内置,而是需要单独引入。操作canvas动画,最高性能的方式是使用vue页面的renderjs技术,在hello uni-app里的canvas示例就是如此。
...
...
docs/performance.md
浏览文件 @
11ae41b3
...
...
@@ -140,9 +140,9 @@ Android上popin动画时,老窗体会有一个半透明消失的效果。这
##### 优化启动速度
*
工程代码越多,包括背景图和本地字体文件越大,对小程序启动速度有影响,应注意控制体积。
<image>
组件引用的前景图不影响性能。
app端在v3以前也存在和小程序一样的问题,但v3起解决了这个问题。
*
工程代码越多,包括背景图和本地字体文件越大,对小程序启动速度有影响,应注意控制体积。
<image>
组件引用的前景图不影响性能。
*
App端的 splash 关闭有白屏检测机制,如果首页一直白屏或首页本身就是一个空的中转页面,可能会造成 splash 10秒才关闭,可参考此文解决
[
https://ask.dcloud.net.cn/article/35565
](
https://ask.dcloud.net.cn/article/35565
)
*
App端
使用v3编译器
,首页为nvue页面时,并设置为
[
fast启动模式
](
https://ask.dcloud.net.cn/article/36749
)
,此时App启动速度最快。
*
App端,首页为nvue页面时,并设置为
[
fast启动模式
](
https://ask.dcloud.net.cn/article/36749
)
,此时App启动速度最快。
*
App设置为纯nvue项目(manifest里设置app-plus下的renderer:"native"),这种项目的启动速度更快,2秒即可完成启动。因为它整个应用都使用原生渲染,不加载基于webview的那套框架。
##### 优化包体积
...
...
@@ -151,5 +151,4 @@ Android上popin动画时,老窗体会有一个半透明消失的效果。这
*
uni-app的H5端,自带了vue.js、vue-router及部分es6 polyfill库,这部分的体积gzip后只有92k,和web开发使用vue基本一致。而内置组件ui库(如picker、switch等)、小程序的对齐js api等,相当于一个完善的大型ui库。但大多数应用不会用到所有内置组件和API。由此uni-app提供了摇树优化机制,未摇树优化前的uni-app整体包体积约500k,服务器部署gzip后162k。开启摇树优化需在manifest配置,
[
详情
](
https://uniapp.dcloud.io/collocation/manifest?id=optimization
)
。
*
uni-app的App端,因为自带了一个独立v8引擎和小程序框架,所以比HTML5Plus或mui等普通hybrid的App引擎体积要大。Android基础引擎约9M。App还提供了扩展模块,比如地图、蓝牙等,打包时如不需要这些模块,可以裁剪掉,以缩小发行包体积。在 manifest.json-App模块权限 里可以选择。
*
App端支持如果选择纯nvue项目(manifest里设置app-plus下的renderer:"native"),包体积可以进一步减少2M左右。
*
App端在HBuilderX 2.7后,App端下掉了非v3的编译模式,包体积下降了3M。
*
uni-app的App-Android端有so库的概念,支持不同的cpu类型的so库越多,包越大。在HBuilderX 2.7以前,Android app默认包含arm32和x86两个cpu的支持so库。包体积比较大。如果你在意体积控制,可以在manifest里去掉x86 cpu的支持(manifest可视化界面-App其他设置里选择cpu),这可以减少包体积到9M。从HBuilderX 2.7起,默认不再包含x86,如有需求请自行在manifest里勾选后打包。一般手机都是arm的,涉及x86 cpu场景很少,包括:个别少见的Android pad、as的模拟器里选择x86类型。
docs/use.md
浏览文件 @
11ae41b3
此差异已折叠。
点击以展开。
docs/vue-api.md
浏览文件 @
11ae41b3
...
...
@@ -25,7 +25,7 @@
|Vue.set | 向响应式对象中添加一个 property,并确保这个新 property 同样是响应式的,且触发视图更新
[
详情
](
https://cn.vuejs.org/v2/api/#Vue-set
)
|√ | √|√ | |
|Vue.delete | 删除对象的 property。如果对象是响应式的,确保删除能触发更新视图
[
详情
](
https://cn.vuejs.org/v2/api/#Vue-delete
)
|√ | √ | √ | |
|Vue.directive | 注册或获取全局指令
[
详情
](
https://cn.vuejs.org/v2/api/#Vue-directive
)
|√ |√ | x | |
|Vue.filter | 注册或获取全局过滤器
[
详情
](
https://cn.vuejs.org/v2/api/#Vue-filter
)
|√ |√ | x |
App端旧版不可以在class中使用
|
|Vue.filter | 注册或获取全局过滤器
[
详情
](
https://cn.vuejs.org/v2/api/#Vue-filter
)
|√ |√ | x |
|
|Vue.component | 注册或获取全局组件。注册还会自动使用给定的 id 设置组件的名称
[
详情
](
https://cn.vuejs.org/v2/api/#Vue-component
)
|√ | √ | √ | |
|Vue.use | 安装 Vue.js 插件
[
详情
](
https://cn.vuejs.org/v2/api/#Vue-use
)
|√ | √ | √ | |
|Vue.mixin | 全局注册一个混入,影响注册之后所有创建的每个 Vue 实例
[
详情
](
https://cn.vuejs.org/v2/api/#Vue-mixin
)
|√ |√ | √ | |
...
...
@@ -39,7 +39,7 @@
|Vue 选项 |描述 |H5 |App端|微信小程序 |说明 |
| -- | -- | -- |-- |-- | -- |
|data | Vue 实例的数据对象
[
详情
](
https://cn.vuejs.org/v2/api/#data
)
|√ |√ | √ | |
|props | props 可以是数组或对象,用于接收来自父组件的数据
[
详情
](
https://cn.vuejs.org/v2/api/#props
)
|√ |√ | √ |
App端旧版不可以传递函数
|
|props | props 可以是数组或对象,用于接收来自父组件的数据
[
详情
](
https://cn.vuejs.org/v2/api/#props
)
|√ |√ | √ |
|
|propsData | 创建实例时传递 props。主要作用是方便测试
[
详情
](
https://cn.vuejs.org/v2/api/#propsData
)
|√ | √ | √ | |
|computed | 计算属性将被混入到 Vue 实例中
[
详情
](
https://cn.vuejs.org/v2/api/#computed
)
|√ | √ | √ | |
|methods | methods 将被混入到 Vue 实例中
[
详情
](
https://cn.vuejs.org/v2/api/#methods
)
|√ | √ | √ | |
...
...
@@ -49,13 +49,13 @@
|render | 字符串模板的代替方案,该渲染函数接收一个 createElement 方法作为第一个参数用来创建 VNode。
[
详情
](
https://cn.vuejs.org/v2/api/#render
)
|√ | x | x | |
|renderError | 当 render 函数遭遇错误时,提供另外一种渲染输出,只在开发者环境下工作
[
详情
](
https://cn.vuejs.org/v2/api/#renderError
)
|√ | x | x | |
|directives | 包含 Vue 实例可用指令的哈希表
[
详情
](
https://cn.vuejs.org/v2/api/#directives
)
|√ | √ | x | |
|filters | 包含 Vue 实例可用过滤器的哈希表
[
详情
](
https://cn.vuejs.org/v2/api/#filters
)
|√ | √ | √ |
App端旧版不可以在class中使用
|
|filters | 包含 Vue 实例可用过滤器的哈希表
[
详情
](
https://cn.vuejs.org/v2/api/#filters
)
|√ | √ | √ |
|
|components | 包含 Vue 实例可用组件的哈希表
[
详情
](
https://cn.vuejs.org/v2/api/#components
)
|√ | √ | √ | |
|parent | 指定已创建的实例之父实例,在两者之间建立父子关系
[
详情
](
https://cn.vuejs.org/v2/api/#parent
)
|√ | √ | √ |不推荐 |
|mixins | 选项接收一个混入对象的数组
[
详情
](
https://cn.vuejs.org/v2/api/#mixins
)
|√ | √ | √ | |
|extends | 允许声明扩展另一个组件
[
详情
](
https://cn.vuejs.org/v2/api/#extends
)
|√ | √ | √ | |
|provide/inject | 允许一个祖先组件向其所有子孙后代注入一个依赖,不论组件层次有多深,并在其上下游关系成立的时间里始终生效
[
详情
](
https://cn.vuejs.org/v2/api/#provide-inject
)
|√ |√ | √ |
App端旧版部分支持
|
|name | 允许组件模板递归地调用自身
[
详情
](
https://cn.vuejs.org/v2/api/#name
)
|√ | √ | √ |
App端旧版不支持递归组件
|
|provide/inject | 允许一个祖先组件向其所有子孙后代注入一个依赖,不论组件层次有多深,并在其上下游关系成立的时间里始终生效
[
详情
](
https://cn.vuejs.org/v2/api/#provide-inject
)
|√ |√ | √ |
|
|name | 允许组件模板递归地调用自身
[
详情
](
https://cn.vuejs.org/v2/api/#name
)
|√ | √ | √ |
|
|delimiters | 改变纯文本插入分隔符
[
详情
](
https://cn.vuejs.org/v2/api/#delimiters
)
|√ |x | x | |
|functional | 使组件无状态 (没有 data) 和无实例 (没有 this 上下文)
[
详情
](
https://cn.vuejs.org/v2/api/#functional
)
|√ | x | x | |
|model | 允许一个自定义组件在使用 v-model 时定制 prop 和 event
[
详情
](
https://cn.vuejs.org/v2/api/#model
)
|√ |√ | x | |
...
...
@@ -99,10 +99,10 @@
|vm.$parent | 父实例,如果当前实例有的话
[
详情
](
https://cn.vuejs.org/v2/api/#vm-parent
)
|√ |√ | √ |H5端
`view`
、
`text`
等内置标签是以 Vue 组件方式实现,
`$parent`
会获取这些到内置组件,导致的问题是
`this.$parent`
与其他平台不一致,解决方式是使用
`this.$parent.$parent`
获取或自定义组件根节点由
`view`
改为
`div`
|
|vm.$root | 当前组件树的根 Vue 实例
[
详情
](
https://cn.vuejs.org/v2/api/#vm-root
)
|√ | √ | √ | |
|vm.$children | 当前实例的直接子组件
[
详情
](
https://cn.vuejs.org/v2/api/#vm-children
)
|√ | √ | √ |H5端
`view`
、
`text`
等内置标签是以 Vue 组件方式实现,
`$children`
会获取到这些内置组件,导致的问题是
`this.$children`
与其他平台不一致,解决方式是使用
`this.$children.$children`
获取或自定义组件根节点由
`view`
改为
`div`
|
|vm.$slots | 用来访问被插槽分发的内容
[
详情
](
https://cn.vuejs.org/v2/api/#vm-slots
)
|√ | x | √ |
App端旧版获取值为{'slotName':true/false}比如:{"footer":true}
|
|vm.$scopedSlots | 用来访问作用域插槽
[
详情
](
https://cn.vuejs.org/v2/api/#vm-scopedSlots
)
|√ | √ | √ |
App端旧版获取值为{'slotName':true/false}比如:{"footer":true}
|
|vm.$slots | 用来访问被插槽分发的内容
[
详情
](
https://cn.vuejs.org/v2/api/#vm-slots
)
|√ | x | √ |
|
|vm.$scopedSlots | 用来访问作用域插槽
[
详情
](
https://cn.vuejs.org/v2/api/#vm-scopedSlots
)
|√ | √ | √ |
|
|vm.$refs | 一个对象,持有注册过 ref attribute 的所有 DOM 元素和组件实例
[
详情
](
https://cn.vuejs.org/v2/api/#vm-refs
)
|√ | √ | √ |非H5端只能用于获取自定义组件,不能用于获取内置组件实例(如:view、text) |
|vm.$isServer | 当前 Vue 实例是否运行于服务器
[
详情
](
https://cn.vuejs.org/v2/api/#vm-isServer
)
|√ | √ | x |App端
V3
总是返回false |
|vm.$isServer | 当前 Vue 实例是否运行于服务器
[
详情
](
https://cn.vuejs.org/v2/api/#vm-isServer
)
|√ | √ | x |App端总是返回false |
|vm.$attrs | 包含了父作用域中不作为 prop 被识别 (且获取) 的 attribute 绑定
[
详情
](
https://cn.vuejs.org/v2/api/#vm-attrs
)
|√ | √ | x | |
|vm.$listeners | 包含了父作用域中的 (不含 .native 修饰器的) v-on 事件监听器
[
详情
](
https://cn.vuejs.org/v2/api/#vm-listeners
)
|√ | √ | x | - |
...
...
@@ -146,7 +146,7 @@
|v-else-if| 表示 v-if 的“else if 块”。可以链式调用
[
详情
](
https://cn.vuejs.org/v2/api/#v-else-if
)
|√ | √ | √ | |
|v-for | 基于源数据多次渲染元素或模板块
[
详情
](
https://cn.vuejs.org/v2/api/#v-for
)
|√ | √ | √ | |
|v-on | 绑定事件监听器
[
详情
](
https://cn.vuejs.org/v2/api/#v-on
)
|√ | √ | √ | |
|v-bind | 动态地绑定一个或多个 attribute,或一个组件 prop 到表达式
[
详情
](
https://cn.vuejs.org/v2/api/#v-bind
)
|√ | √ | √ |
App端旧版不支持v-bind="{key:value}"类似用法
|
|v-bind | 动态地绑定一个或多个 attribute,或一个组件 prop 到表达式
[
详情
](
https://cn.vuejs.org/v2/api/#v-bind
)
|√ | √ | √ |
|
|v-model| 在表单控件或者组件上创建双向绑定
[
详情
](
https://cn.vuejs.org/v2/api/#v-model
)
|√ | √ | √ | |
|v-pre | 跳过这个元素和它的子元素的编译过程
[
详情
](
https://cn.vuejs.org/v2/api/#v-pre
)
|√ | √ | x | |
|v-cloak| 这个指令保持在元素上直到关联实例结束编译
[
详情
](
https://cn.vuejs.org/v2/api/#v-cloak
)
|√ | x | x | |
...
...
@@ -160,7 +160,7 @@
|特殊属性 |描述 |H5 |App端|微信小程序 |说明 |
| -- | -- | -- |-- |-- | -- |
|key | 主要用在 Vue 的虚拟 DOM 算法,在新旧 nodes 对比时辨识 VNodes
[
详情
](
https://cn.vuejs.org/v2/api/#key
)
|√ | √ | √ |
App端旧版不支持表达式
|
|key | 主要用在 Vue 的虚拟 DOM 算法,在新旧 nodes 对比时辨识 VNodes
[
详情
](
https://cn.vuejs.org/v2/api/#key
)
|√ | √ | √ |
|
|ref | ref 被用来给元素或子组件注册引用信息
[
详情
](
https://cn.vuejs.org/v2/api/#ref
)
|√ | √ | √ |非 H5 平台只能获取 vue 组件实例不能获取到内置组件实例|
|is | 用于动态组件且基于 DOM 内模板的限制来工作
[
详情
](
https://cn.vuejs.org/v2/api/#is
)
|√ | √ | x | - |
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录