提交 db1ef3a6 编写于 作者: study夏羽's avatar study夏羽

update nvue

上级 b042b244
......@@ -55,9 +55,9 @@
非内置原生插件,分为 [本地插件](#localPlugins)[云端插件](#cloudPlugins) 。集成原生插件后,需要提交云端打包或制作自定义基座运行才会生效。
非内置原生插件,分为 [本地插件](/api/extend/native-plugin?id=本地插件非内置原生插件)[云端插件](/api/extend/native-plugin?id=云端插件非内置原生插件) 。集成原生插件后,需要提交云端打包或制作自定义基座运行才会生效。
### 本地插件(非内置原生插件)<div id="localPlugins"></div>
### 本地插件(非内置原生插件)
**本地插件**,是uni-app项目nativeplugins目录(目录不存在则创建)下的原生插件。
......@@ -100,7 +100,7 @@
### 云端插件(非内置原生插件)<div id="cloudPlugins"></div>
### 云端插件(非内置原生插件)
**云端插件**,已经在插件市场绑定或购买的插件,无需下载插件到工程中,云打包时会直接合并打包原生插件到APP中。(试用插件只能在自定义基座中使用)
......
......@@ -216,7 +216,7 @@ export default {
**注意**
- nvue 页面支持的生命周期参考:[nvue 生命周期介绍](/nvue-outline?id=生命周期)。
- nvue 页面支持的生命周期参考:[nvue 生命周期介绍](/nvue-outline?id=编译模式)。
## 路由
......
......@@ -16,13 +16,13 @@
- 支持项目nativeplugins目录下和插件市场原生云打包的第三方原生插件。你可以将已有原生模块移植到nvue平台也很方便。
使用方式:在manifest.json->App原生插件配置->选择本地插件或者云端插件->打自定义基座才能使用。[详见](/api/extend/native-plugin.md)
- nvue还支持uni-app的js API接口,若无特殊说明,则表示vue文件和nvue文件均支持。[详见](/api)
- nvue还支持uni-app的js API接口,若无特殊说明,则表示vue文件和nvue文件均支持。[详见](/api/README)
- nvue 里不支持的 uni-app API,[详见](#nvueAPI)
- nvue 里不支持的 uni-app API,[详见](/nvue-api?id=nvue-里不支持的-uni-app-api)
### addRule <div id="addRule"></div>
### addRule
Weex 提供 DOM.addRule 以**加载自定义字体**。开发者可以通过指定 font-family加载 iconfont 和 custom font。开发者可以使用下面的代码加载自定义字体:
``` html
......@@ -204,7 +204,7 @@
## animation<div id="animation"></div>
## animation
```animation```模块可以用来在组件上执行动画。JS-Animation可以对组件执行一系列简单的变换 (位置、大小、旋转角度、背景颜色和不透明度)。
......@@ -303,7 +303,7 @@
- Android 的callback 函数不支持result参数。
> 如果需要使用CSS动画,参考[transition](#transition) 或 [transform](#transform)
> 如果需要使用CSS动画,参考[transition](/nvue-css?id=transition)和[transition](/nvue-css?id=transform)
......@@ -699,14 +699,14 @@ BindingX类似一种强化版的css,运行性能高,但没有js那样足够
nvue页面可直接使用plus的API,并且不需要等待plus ready。
## nvue 里不支持的 uni-app API<div id="nvueAPI"></div>
## nvue 里不支持的 uni-app API
nvue 支持大部分 uni-app API ,下面只列举目前还**不支持的 API** 。
##### 动画
|API |说明 |解决方案|
|-- |-- |-- |
|uni.createAnimation() |创建一个动画实例 |[animation](#animation)|
|uni.createAnimation() |创建一个动画实例 |[animation](/nvue-api?id=animation)|
##### 滚动
......
......@@ -333,7 +333,6 @@ flex {number}:值为 number 类型。
background-color: #00AAFF;
}
</style>
</style>
```
......@@ -791,7 +790,7 @@ font-weight {string}:字体粗细程度。默认值: ```normal```;
### font-family
```font-family {string}```:设置字体。这个设置不保证在不同平台,设备间的一致性。
如所选设置在平台上不可用,将会降级到平台默认字体。
如果需要加载自定义字体,请参考相关[DOM.addRule](#addRule)
如果需要加载自定义字体,请参考相关[DOM.addRule](/nvue-api?id=addrule)
### text-overflow
```text-overflow {string}```:设置内容超长时的省略样式。
......
......@@ -9,7 +9,7 @@
同时```uni-app```扩展了weex原生渲染引擎的很多排版能力,修复了很多bug。比如
- Android端良好支持边框阴影,[详情](#阴影)
- Android端良好支持边框阴影,[详情](/nvue-css?id=android平台:阴影elevation)
- iOS端支持高斯模糊,<a href="https://ask.dcloud.net.cn/article/36617#view" target="_blank">详情</a>
- 可实现区域滚动长列表+左右拖动列表+吸顶的复杂排版效果
- 优化圆角边框绘制性能
......@@ -138,7 +138,7 @@ weex 编译模式下支持使用 weex ui ,例子[详见](https://ext.dcloud.ne
- template: 模板写法、数据绑定同 vue。组件支持2种模式,
- weex 组件,同weex写法,参考:[weex 内置组件](https://weex.apache.org/zh/docs/components/a.html);
- uni-app组件,同uni-app写法。
- style:由于采用原生渲染,**并非所有浏览器的 css 均支持,布局模型只支持 flex 布局**,虽然不会造成某些界面布局无法实现,但写法要注意。详见:[样式](#样式)
- style:由于采用原生渲染,**并非所有浏览器的 css 均支持,布局模型只支持 flex 布局**,虽然不会造成某些界面布局无法实现,但写法要注意。详见:[样式](/nvue-css)
- script:写法同 vue,并支持3种API:
- nvue API :仅支持App端,uni-app编译模式也可使用。使用前需先引入对应模块,参考:[模块引入API](/nvue-api)
- uni API:[https://uniapp.dcloud.io/api/README](https://uniapp.dcloud.io/api/README)
......@@ -162,7 +162,7 @@ HBuilderX内置了weex调试工具的强化版,包括审查界面元素、看l
8. nvue 切换横竖屏时可能导致样式出现问题,建议有 nvue 的页面锁定手机方向。
9. 支持的css有限,不过并不影响布局出你需要的界面,```flex```还是非常强大的。详见
10. 不支持背景图。但可以使用```image```组件和层级来实现类似web中的背景效果。因为原生开发本身也没有web这种背景图概念
11. css选择器支持的比较少,只能使用 class 选择器。[详见](#样式)
11. css选择器支持的比较少,只能使用 class 选择器。[详见](/nvue-css)
12. nvue 的各组件在安卓端默认是透明的,如果不设置```background-color```,可能会导致出现重影的问题。
13. ```class``` 进行绑定时只支持数组语法。
14. Android端在一个页面内使用大量圆角边框会造成性能问题,尤其是多个角的样式还不一样的话更耗费性能。应避免这类使用。
......@@ -170,7 +170,7 @@ HBuilderX内置了weex调试工具的强化版,包括审查界面元素、看l
16. 原生开发没有页面滚动的概念,页面内容高过屏幕高度并不会自动滚动,只有部分组件可滚动(```list```、```waterfall```、```scroll-view/scroller```),要滚得内容需要套在可滚动组件下。这不符合前端开发的习惯,所以在 nvue 编译为 uni-app模式时,给页面外层自动套了一个 ```scroller```,页面内容过高会自动滚动。(组件不会套,页面有```recycle-list```时也不会套)。后续会提供配置,可以设置不自动套。
17. 在 App.vue 中定义的全局js变量不会在 nvue 页面生效。```globalData```和```vuex```是生效的。
18. App.vue 中定义的全局css,对nvue和vue页面同时生效。如果全局css中有些css在nvue下不支持,编译时控制台会报警,建议把这些不支持的css包裹在[条件编译](https://uniapp.dcloud.io/platform)里,```APP-PLUS-NVUE```
19. 不能在 ```style``` 中引入字体文件,nvue 中字体图标的使用参考:[加载自定义字体](#addRule)。如果是本地字体,可以用```plus.io```的API转换路径。
19. 不能在 ```style``` 中引入字体文件,nvue 中字体图标的使用参考:[加载自定义字体](/nvue-api?id=addrule)。如果是本地字体,可以用```plus.io```的API转换路径。
20. 目前不支持在 nvue 页面使用 ```typescript/ts```。
21. nvue 页面关闭原生导航栏时,想要模拟状态栏,可以[参考文章](https://ask.dcloud.net.cn/article/35111)。但是,仍然强烈建议在nvue页面使用原生导航栏。nvue的渲染速度再快,也没有原生导航栏快。原生排版引擎解析```json```绘制原生导航栏耗时很少,而解析nvue的js绘制整个页面的耗时要大的多,尤其在新页面进入动画期间,对于复杂页面,没有原生导航栏会在动画期间产生整个屏幕的白屏或闪屏。
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册