Merge branch 'dev'
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 9cd3873..62d7c25 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,10 @@
# Change Log
+## 0.7.1
+- [+] [wxc-slider-bar](https://alibaba.github.io/weex-ui/#/cn/packages/slider-bar) add `wxcSliderBarTouchEnd` event.
+- [!] Fixed [wxc-mask](https://alibaba.github.io/weex-ui/#/cn/packages/mask) jitter bug when inputting.
+- [!] Fixed the problem that the QR code does not display when debugging.
+
## 0.7.0
- [-] Remove alipay util,Preventing audit issues [issue/467](https://github.com/alibaba/weex-ui/issues/467)
- [!] [wxc-tab-bar](https://alibaba.github.io/weex-ui/#/cn/packages/wxc-tab-bar) add `supportXBar` param.
diff --git a/CHANGELOG_cn.md b/CHANGELOG_cn.md
index 4112afc..352dc77 100644
--- a/CHANGELOG_cn.md
+++ b/CHANGELOG_cn.md
@@ -1,5 +1,11 @@
# 升级日志
+## 0.7.1
+- [+] [wxc-slider-bar](https://alibaba.github.io/weex-ui/#/cn/packages/slider-bar) 新增 `wxcSliderBarTouchEnd` 事件.
+- [!] 修复 [wxc-mask](https://alibaba.github.io/weex-ui/#/cn/packages/mask) 输入时候抖动问题
+- [!] 修复调试时候 console 不显示二维码的问题
+
+
## 0.7.0
- [-] 移除支付宝判断,防止审核问题 [issue/467](https://github.com/alibaba/weex-ui/issues/467)
- [!] [wxc-tab-bar](https://alibaba.github.io/weex-ui/#/cn/packages/wxc-tab-bar) 增加 `supportXBar` 参数可用于设置不要 iPhone X 底部 bar 的增高兼容效果
diff --git a/example/_public/index.html b/example/_public/index.html
index d215382..2fe1af9 100644
--- a/example/_public/index.html
+++ b/example/_public/index.html
@@ -30,6 +30,6 @@
<script src="//h5.m.taobao.com/js/trip/weex-ui/vue.runtime.min.js"></script>
<script src="//h5.m.taobao.com/js/trip/weex-ui/weex-vue-render-next.min.js"></script>
<script src="./index.web.js"></script>
-<script src="//h5.m.taobao.com/js/trip/weex-ui/qrcode.js"></script>
+<script src="//qpluspicture.oss-cn-beijing.aliyuncs.com/ts-upload/1573807857-qrcode.js"></script>
</body>
</html>
diff --git a/example/popup/index.vue b/example/popup/index.vue
index fe06906..de9886e 100644
--- a/example/popup/index.vue
+++ b/example/popup/index.vue
@@ -62,7 +62,8 @@
<div class="demo-content">
<image src="https://img.alicdn.com/tfs/TB1ojYvOXXXXXaOXFXXXXXXXXXX-180-41.png"
class="demo-image"></image>
- <text>与 Web App、HTML5 App 或 hybrid App 不同,您可以使用 Weex 构建一个真正的原生应用。更贴心的是你的代码只需使用 HTML、CSS、JavaScript 可以构建原生应用,上手非常简单。</text>
+ <text>与 Web App、HTML5 App 或 hybrid App 不同,您可以使用 Weex 构建一个真正的原生应用。更贴心的是你的代码只需使用 HTML、CSS、JavaScript
+ 可以构建原生应用,上手非常简单。</text>
</div>
</wxc-popup>
@@ -75,6 +76,7 @@
:show="isRightShow"
pos="right"
ref="wxcPopup"
+ :overlay-cfg="{'can-auto-close': false}"
@wxcPopupOverlayClicked="popupOverlayRightClick">
<div @click="onHideClick"
class="btn blue hide-auto">
@@ -183,47 +185,47 @@
isRightShow: false,
isAutoShow: false,
isTrue: true,
- height: 400
+ height: 400,
}),
- created () {
+ created() {
setTitle('Popup');
},
methods: {
- openBottomPopup () {
+ openBottomPopup() {
this.isBottomShow = true;
},
- openTopPopup () {
+ openTopPopup() {
this.isTopShow = true;
},
- openLeftPopup () {
+ openLeftPopup() {
this.isLeftShow = true;
},
- openRightPopup () {
+ openRightPopup() {
this.isRightShow = true;
},
- popupOverlayTopClick () {
+ popupOverlayTopClick() {
this.isTopShow = false;
},
- popupOverlayBottomClick () {
+ popupOverlayBottomClick() {
this.isBottomShow = false;
},
- popupOverlayLeftClick () {
+ popupOverlayLeftClick() {
this.isLeftShow = false;
},
- popupOverlayRightClick () {
+ popupOverlayRightClick() {
this.isRightShow = false;
},
- popupOverlayAutoClick () {
+ popupOverlayAutoClick() {
this.isAutoShow = false;
},
- openAutoPopup () {
+ openAutoPopup() {
const height = this.height;
this.height = height === 400 ? 800 : 400;
this.isAutoShow = true;
},
- onHideClick () {
+ onHideClick() {
this.$refs.wxcPopup.hide();
}
}
diff --git a/example/slider-bar/index.vue b/example/slider-bar/index.vue
index 064a5a2..fcf98ad 100644
--- a/example/slider-bar/index.vue
+++ b/example/slider-bar/index.vue
@@ -27,12 +27,13 @@
<div class="demo-container">
<text class="label">单滑块水平选择条</text>
<text class="value-text">取值:{{barValue}}</text>
- <wxc-slider-bar v-bind="sliderBarCfg1" @updateValue="updateValue"></wxc-slider-bar>
+ <wxc-slider-bar v-bind="sliderBarCfg1" @updateValue="updateValue"
+ @wxcSliderBarTouchEnd="wxcSliderBarTouchEnd"></wxc-slider-bar>
</div>
<div class="demo-container">
<text class="label">双滑块范围水平选择条</text>
<text class="value-text">取值范围:{{minValue}} --- {{maxValue}}</text>
- <wxc-slider-bar v-bind="sliderBarCfg2" @updateValue="updateValue"></wxc-slider-bar>
+ <wxc-slider-bar v-bind="sliderBarCfg2" @updateValue="updateValue" @wxcSliderBarTouchEnd="wxcSliderBarTouchEnd"></wxc-slider-bar>
</div>
<div class="demo-container">
<text class="label">单滑块水平选择条禁用</text>
@@ -91,6 +92,8 @@
import { WxcSliderBar } from '../../index';
import { setTitle } from '../_mods/set-nav';
+ const modal = weex.requireModule("modal");
+
export default {
components: { Title, Category, WxcSliderBar },
data: () => ({
@@ -148,6 +151,11 @@
this.minValue = value[0];
this.maxValue = value[1];
}
+ },
+ wxcSliderBarTouchEnd(value) {
+ modal.toast({
+ message: `end touch: ${value}`
+ })
}
}
}
diff --git a/package-lock.json b/package-lock.json
index 3ec29d1..7d52c76 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,6 +1,6 @@
{
"name": "weex-ui",
- "version": "0.6.11",
+ "version": "0.7.1",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
@@ -11368,9 +11368,9 @@
}
},
"weex-loader": {
- "version": "0.6.15",
- "resolved": "https://registry.npmjs.org/weex-loader/-/weex-loader-0.6.15.tgz",
- "integrity": "sha512-Z3dsqleQsBZ++KZS4EvtBm3PAAuPLnfn9Z10LXAKCrlp+cpW1+1adHCMhVFOFByEjfVHQ80C9nKhIVBuh4mAbA==",
+ "version": "0.7.12",
+ "resolved": "https://registry.npmjs.org/weex-loader/-/weex-loader-0.7.12.tgz",
+ "integrity": "sha512-QJ0x7d3cptEnHH7wn/Wt7aGsL0KjymeNnHGFa9WC1aOYCT9iRuhV3TtuuSw9Q2FfRt7E4zDi2iKc/eAtik/zLQ==",
"dev": true,
"requires": {
"babel-loader": "6.4.1",
@@ -11386,7 +11386,7 @@
"weex-styler": "0.3.1",
"weex-templater": "0.3.5",
"weex-transformer": "0.4.6",
- "weex-vue-loader": "0.5.15"
+ "weex-vue-loader": "0.7.0"
},
"dependencies": {
"babel-loader": {
@@ -11503,39 +11503,6 @@
"css": "2.2.4"
}
},
- "weex-template-compiler": {
- "version": "2.5.13-weex.3",
- "resolved": "https://registry.npmjs.org/weex-template-compiler/-/weex-template-compiler-2.5.13-weex.3.tgz",
- "integrity": "sha512-Zz8OV5x1CanfpUZqV9JR4WD/8X+f1rIjT0SnARm9apKcF/Fd8z3jRHjk/YnYrm6pQPtUnat1cASSZ4CuX25GiA==",
- "dev": true,
- "requires": {
- "acorn": "5.7.3",
- "escodegen": "1.11.1",
- "he": "1.2.0",
- "vue-template-es2015-compiler": "1.9.1"
- },
- "dependencies": {
- "escodegen": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.11.1.tgz",
- "integrity": "sha512-JwiqFD9KdGVVpeuRa68yU3zZnBEOcPs0nKW7wZzXky8Z7tffdYUHbe11bPCV5jYlK6DVdKLWLm0f5I/QlL0Kmw==",
- "dev": true,
- "requires": {
- "esprima": "3.1.3",
- "estraverse": "4.2.0",
- "esutils": "2.0.2",
- "optionator": "0.8.2",
- "source-map": "0.6.1"
- }
- },
- "esprima": {
- "version": "3.1.3",
- "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz",
- "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=",
- "dev": true
- }
- }
- },
"weex-templater": {
"version": "0.3.5",
"resolved": "https://registry.npmjs.org/weex-templater/-/weex-templater-0.3.5.tgz",
@@ -11643,9 +11610,9 @@
}
},
"weex-vue-loader": {
- "version": "0.5.15",
- "resolved": "https://registry.npmjs.org/weex-vue-loader/-/weex-vue-loader-0.5.15.tgz",
- "integrity": "sha512-WXp7r0IoFqdkl60Y6cDLryi3X7YIZGa8uOXuwwd9EHSfz3C1IOs962ldU/YvnJgSRWGuqWjl68DFYUvxqbd+1A==",
+ "version": "0.7.0",
+ "resolved": "https://registry.npmjs.org/weex-vue-loader/-/weex-vue-loader-0.7.0.tgz",
+ "integrity": "sha512-VUZybf6WQVCe6ahptIcgCUG56lqWyPt7WCD2ud84kL5QhLrwM7Qc+sKyGVs4NSqA84pvno4KnNtsUVBTmnrMCg==",
"dev": true,
"requires": {
"babel-loader": "6.4.1",
@@ -11665,7 +11632,7 @@
"vue-template-compiler": "2.6.10",
"vue-template-es2015-compiler": "1.9.1",
"weex-styler": "0.3.1",
- "weex-template-compiler": "2.5.13-weex.3"
+ "weex-template-compiler": "2.5.16-weex.1"
},
"dependencies": {
"ansi-styles": {
@@ -11782,6 +11749,34 @@
"fastparse": "1.1.2"
}
},
+ "escodegen": {
+ "version": "1.12.0",
+ "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.12.0.tgz",
+ "integrity": "sha512-TuA+EhsanGcme5T3R0L80u4t8CpbXQjegRmf7+FPTJrtCTErXFeelblRgHQa1FofEzqYYJmJ/OqjTwREp9qgmg==",
+ "dev": true,
+ "requires": {
+ "esprima": "3.1.3",
+ "estraverse": "4.2.0",
+ "esutils": "2.0.2",
+ "optionator": "0.8.2",
+ "source-map": "0.6.1"
+ },
+ "dependencies": {
+ "source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true,
+ "optional": true
+ }
+ }
+ },
+ "esprima": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz",
+ "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=",
+ "dev": true
+ },
"find-cache-dir": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-0.1.1.tgz",
@@ -11856,17 +11851,29 @@
"requires": {
"has-flag": "1.0.0"
}
+ },
+ "weex-template-compiler": {
+ "version": "2.5.16-weex.1",
+ "resolved": "https://registry.npmjs.org/weex-template-compiler/-/weex-template-compiler-2.5.16-weex.1.tgz",
+ "integrity": "sha512-v6hlv2eANy35y2iu9mO+OQ3oHx1/OtfbEx1PrONaCeS6tHKTu4W0dx22GP0T4qinSLlORBvwGwMGyKEme5YD7w==",
+ "dev": true,
+ "requires": {
+ "acorn": "5.7.3",
+ "escodegen": "1.12.0",
+ "he": "1.2.0",
+ "vue-template-es2015-compiler": "1.9.1"
+ }
}
}
},
"weex-vue-precompiler": {
- "version": "0.1.25",
- "resolved": "https://registry.npmjs.org/weex-vue-precompiler/-/weex-vue-precompiler-0.1.25.tgz",
- "integrity": "sha512-l5FqGNstSsMO0JJPKYGzSo+d58b/Hs1P4cGt2DkBOgAJQrzRuf78wD29mkBNrVuOUPZz3FmPWifUy/PzndsfLg==",
+ "version": "0.1.26",
+ "resolved": "https://registry.npmjs.org/weex-vue-precompiler/-/weex-vue-precompiler-0.1.26.tgz",
+ "integrity": "sha512-lbKOrlgM4zZuXYzBBPp9IC7jMQfLbHrXTfRseKLr7Vjvhmh3n3f7b80o6JpQEkF94BNtievd3ysOgaWnd8mn7A==",
"dev": true,
"requires": {
"autoprefixer": "7.2.6",
- "escodegen": "1.11.1",
+ "escodegen": "1.12.0",
"esprima": "4.0.1",
"postcss": "6.0.23",
"postcss-plugin-px2rem": "0.7.0",
@@ -11874,9 +11881,9 @@
},
"dependencies": {
"escodegen": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.11.1.tgz",
- "integrity": "sha512-JwiqFD9KdGVVpeuRa68yU3zZnBEOcPs0nKW7wZzXky8Z7tffdYUHbe11bPCV5jYlK6DVdKLWLm0f5I/QlL0Kmw==",
+ "version": "1.12.0",
+ "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.12.0.tgz",
+ "integrity": "sha512-TuA+EhsanGcme5T3R0L80u4t8CpbXQjegRmf7+FPTJrtCTErXFeelblRgHQa1FofEzqYYJmJ/OqjTwREp9qgmg==",
"dev": true,
"requires": {
"esprima": "3.1.3",
diff --git a/package.json b/package.json
index a9674ea..1bce631 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "weex-ui",
- "version": "0.7.0",
+ "version": "0.7.1",
"description": "A rich interaction, lightweight, high performance UI library based on Weex",
"main": "index.js",
"lib": "vue",
@@ -67,10 +67,10 @@
"vue-loader": "^12.2.2",
"vue-template-compiler": "^2.5.3",
"webpack": "^2.7.0",
- "weex-loader": "^0.6.0",
- "weex-vue-loader": "^0.5.0",
- "weex-vue-precompiler": "^0.1.17",
- "weex-vue-render": "^1.0.17"
+ "weex-loader": "^0.7.12",
+ "weex-vue-loader": "^0.7.0",
+ "weex-vue-precompiler": "^0.1.26",
+ "weex-vue-render": "^1.0.36"
},
"dependencies": {
"url-parse": "^1.4.3",
diff --git a/packages/wxc-mask/index.vue b/packages/wxc-mask/index.vue
index f1ac942..a6b9cb0 100644
--- a/packages/wxc-mask/index.vue
+++ b/packages/wxc-mask/index.vue
@@ -59,10 +59,6 @@
.wxc-mask {
position: fixed;
- top: 300px;
- left: 60px;
- width: 702px;
- height: 800px;
}
.mask-bottom {
diff --git a/packages/wxc-overlay/README.md b/packages/wxc-overlay/README.md
index 2c0d12d..f315ffb 100644
--- a/packages/wxc-overlay/README.md
+++ b/packages/wxc-overlay/README.md
@@ -47,7 +47,7 @@
### API
| Prop | Type | Required | Default | Description |
-|-------------|------------|--------|-----|
+|-------------|------------|--------|-----|-----|
| show | `Boolean` |`Y`| `false` | whether to show |
| opacity | `Number` |`N`| `0.6` | opacity `0-1` |
| left | `Number` |`N`| `0` | move left distance |
diff --git a/packages/wxc-overlay/index.vue b/packages/wxc-overlay/index.vue
index c7989d7..d6b1e6e 100644
--- a/packages/wxc-overlay/index.vue
+++ b/packages/wxc-overlay/index.vue
@@ -55,7 +55,7 @@
default: 0
},
left: {
- default: Number,
+ type: Number,
default: 0
},
hasAnimation: {
diff --git a/packages/wxc-slider-bar/README.md b/packages/wxc-slider-bar/README.md
index 9244f3a..2a01861 100644
--- a/packages/wxc-slider-bar/README.md
+++ b/packages/wxc-slider-bar/README.md
@@ -31,7 +31,7 @@
defaultValue: 50,
disabled: false
}
- });
+ })
}
</script>
```
@@ -62,4 +62,5 @@
```
@updateValue="updateValue"
+@wxcSliderBarTouchEnd="wxcSliderBarTouchEnd"
```
diff --git a/packages/wxc-slider-bar/README_cn.md b/packages/wxc-slider-bar/README_cn.md
index 252881a..42e181a 100644
--- a/packages/wxc-slider-bar/README_cn.md
+++ b/packages/wxc-slider-bar/README_cn.md
@@ -60,6 +60,13 @@
### 事件
- 滑动时候的值更新
+
```
@updateValue="updateValue"
```
+
+- 滑动停止时候回传指
+
+```
+@wxcSliderBarTouchEnd="wxcSliderBarTouchEnd"
+```
diff --git a/packages/wxc-slider-bar/index.vue b/packages/wxc-slider-bar/index.vue
index c607179..3065af7 100644
--- a/packages/wxc-slider-bar/index.vue
+++ b/packages/wxc-slider-bar/index.vue
@@ -39,6 +39,7 @@
class="slide-block"
@panstart="webStartHandler"
@panmove="webMoveHandler1"
+ @panend="webEndHandler"
@touchstart="weexStartHandler1"
@touchend="weexEndHandler"
@horizontalpan="weexHandler1"
@@ -52,6 +53,7 @@
class="slide-block"
@panstart="webStartHandler"
@panmove="webMoveHandler2"
+ @panend="webEndHandler"
@touchstart="weexStartHandler2"
@touchend="weexEndHandler"
@horizontalpan="weexHandler2"
@@ -255,7 +257,25 @@
}
},
methods: {
-
+ getBlock1Value(callback) {
+ dom.getComponentRect(this.block1, option => {
+ const { left } = option.size;
+ const value = this._getValue(left - this.leftDiffX);
+ if (!this.range) {
+ callback && callback(value)
+ } else {
+ this.selectRange[0] = value;
+ callback && callback(this.selectRange)
+ }
+ });
+ },
+ getBlock2Value(callback) {
+ dom.getComponentRect(this.block2, option => {
+ const { left } = option.size;
+ this.selectRange[1] = this._getValue(left - this.leftDiffX);
+ callback && callback(this.selectRange)
+ });
+ },
// 更新单选值或最小值
weexHandler1(e) {
const self = this;
@@ -264,18 +284,10 @@
self.bindBlock1();
break;
case 'move':
- dom.getComponentRect(this.block1, option => {
- const { left } = option.size;
- const value = this._getValue(left - this.leftDiffX);
- if (!this.range) {
- this.$emit('updateValue', value);
- } else {
- this.selectRange[0] = value;
- this.$emit('updateValue', this.selectRange);
- }
- });
+ this.getBlock1Value((value) => this.$emit('updateValue', value))
break;
case 'end':
+ this.getBlock1Value((value) => this.$emit('wxcSliderBarTouchEnd', value))
break;
default:
break;
@@ -291,13 +303,10 @@
self.bindBlock2();
break;
case 'move':
- dom.getComponentRect(this.block2, option => {
- const { left } = option.size;
- this.selectRange[1] = this._getValue(left - this.leftDiffX);
- this.$emit('updateValue', this.selectRange);
- });
+ self.getBlock2Value(value => this.$emit('updateValue', value));
break;
case 'end':
+ self.getBlock2Value(value => this.$emit('wxcSliderBarTouchEnd', value));
break;
default:
break;
@@ -310,16 +319,7 @@
return;
}
this.firstInterval = setInterval(() => {
- dom.getComponentRect(this.block1, option => {
- const { left } = option.size;
- const value = this._getValue(left - this.leftDiffX);
- if (!this.range) {
- this.$emit('updateValue', value);
- } else {
- this.selectRange[0] = value;
- this.$emit('updateValue', this.selectRange);
- }
- });
+ this.getBlock1Value(value => this.$emit('updateValue', value))
}, this.timeout);
},
@@ -329,11 +329,7 @@
}
// 由于android端不支持 horizontalpan 的move事件,使用setInterval hack方案
this.secondInterval = setInterval(() => {
- dom.getComponentRect(this.block2, option => {
- const { left } = option.size;
- this.selectRange[1] = this._getValue(left - this.leftDiffX);
- this.$emit('updateValue', this.selectRange);
- });
+ this.getBlock2Value((value) => this.$emit('updateValue', value))
}, this.timeout);
},
@@ -344,6 +340,11 @@
}
this.firstInterval && clearInterval(this.firstInterval);
this.secondInterval && clearInterval(this.secondInterval);
+ if (this.range) {
+ this.getBlock2Value(value => this.$emit('updateValue', value))
+ } else {
+ this.getBlock1Value(value => this.$emit('updateValue', value))
+ }
},
webStartHandler(e) {
@@ -384,6 +385,17 @@
}
},
+ webEndHandler(e) {
+ if (this.env === 'weex' || this.disabled) {
+ return;
+ }
+ if (!this.range) {
+ this.$emit('wxcSliderBarTouchEnd', this._getValue(this.diffX1));
+ } else {
+ this.selectRange[1] = this._getValue(this.diffX2);
+ this.$emit('wxcSliderBarTouchEnd', this.selectRange);
+ }
+ },
webMoveHandler2(e) {
if (this.env === 'weex' || this.disabled) {
return;
@@ -409,7 +421,6 @@
}
}
},
-
bindBlock1() {
const self = this;
@@ -568,7 +579,6 @@
return value;
}
}
- return;
},
// 根据x方向偏移量计算value
@@ -593,7 +603,7 @@
}
- .range-bar{
+ .range-bar {
overflow: hidden;
}