http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/43564f3b/android/playground/app/src/main/assets/vue/components/slider.js
----------------------------------------------------------------------
diff --git a/android/playground/app/src/main/assets/vue/components/slider.js 
b/android/playground/app/src/main/assets/vue/components/slider.js
deleted file mode 100644
index aeeb4b5..0000000
--- a/android/playground/app/src/main/assets/vue/components/slider.js
+++ /dev/null
@@ -1,929 +0,0 @@
-// { "framework": "Vue" }
-
-/******/ (function(modules) { // webpackBootstrap
-/******/       // The module cache
-/******/       var installedModules = {};
-
-/******/       // The require function
-/******/       function __webpack_require__(moduleId) {
-
-/******/               // Check if module is in cache
-/******/               if(installedModules[moduleId])
-/******/                       return installedModules[moduleId].exports;
-
-/******/               // Create a new module (and put it into the cache)
-/******/               var module = installedModules[moduleId] = {
-/******/                       exports: {},
-/******/                       id: moduleId,
-/******/                       loaded: false
-/******/               };
-
-/******/               // Execute the module function
-/******/               modules[moduleId].call(module.exports, module, 
module.exports, __webpack_require__);
-
-/******/               // Flag the module as loaded
-/******/               module.loaded = true;
-
-/******/               // Return the exports of the module
-/******/               return module.exports;
-/******/       }
-
-
-/******/       // expose the modules object (__webpack_modules__)
-/******/       __webpack_require__.m = modules;
-
-/******/       // expose the module cache
-/******/       __webpack_require__.c = installedModules;
-
-/******/       // __webpack_public_path__
-/******/       __webpack_require__.p = "";
-
-/******/       // Load entry module and return exports
-/******/       return __webpack_require__(0);
-/******/ })
-/************************************************************************/
-/******/ ({
-
-/***/ 0:
-/***/ (function(module, exports, __webpack_require__) {
-
-       var __vue_exports__, __vue_options__
-       var __vue_styles__ = []
-
-       /* styles */
-       __vue_styles__.push(__webpack_require__(54)
-       )
-
-       /* script */
-       __vue_exports__ = __webpack_require__(55)
-
-       /* template */
-       var __vue_template__ = __webpack_require__(64)
-       __vue_options__ = __vue_exports__ = __vue_exports__ || {}
-       if (
-         typeof __vue_exports__.default === "object" ||
-         typeof __vue_exports__.default === "function"
-       ) {
-       if (Object.keys(__vue_exports__).some(function (key) { return key !== 
"default" && key !== "__esModule" })) {console.error("named exports are not 
supported in *.vue files.")}
-       __vue_options__ = __vue_exports__ = __vue_exports__.default
-       }
-       if (typeof __vue_options__ === "function") {
-         __vue_options__ = __vue_options__.options
-       }
-       __vue_options__.__file = 
"/Users/Hanks/Codes/work/incubator-weex/examples/vue/components/slider.vue"
-       __vue_options__.render = __vue_template__.render
-       __vue_options__.staticRenderFns = __vue_template__.staticRenderFns
-       __vue_options__._scopeId = "data-v-e4ae44bc"
-       __vue_options__.style = __vue_options__.style || {}
-       __vue_styles__.forEach(function (module) {
-         for (var name in module) {
-           __vue_options__.style[name] = module[name]
-         }
-       })
-       if (typeof __register_static_styles__ === "function") {
-         __register_static_styles__(__vue_options__._scopeId, __vue_styles__)
-       }
-
-       module.exports = __vue_exports__
-       module.exports.el = 'true'
-       new Vue(module.exports)
-
-
-/***/ }),
-
-/***/ 3:
-/***/ (function(module, exports, __webpack_require__) {
-
-       var __vue_exports__, __vue_options__
-       var __vue_styles__ = []
-
-       /* styles */
-       __vue_styles__.push(__webpack_require__(4)
-       )
-
-       /* script */
-       __vue_exports__ = __webpack_require__(5)
-
-       /* template */
-       var __vue_template__ = __webpack_require__(6)
-       __vue_options__ = __vue_exports__ = __vue_exports__ || {}
-       if (
-         typeof __vue_exports__.default === "object" ||
-         typeof __vue_exports__.default === "function"
-       ) {
-       if (Object.keys(__vue_exports__).some(function (key) { return key !== 
"default" && key !== "__esModule" })) {console.error("named exports are not 
supported in *.vue files.")}
-       __vue_options__ = __vue_exports__ = __vue_exports__.default
-       }
-       if (typeof __vue_options__ === "function") {
-         __vue_options__ = __vue_options__.options
-       }
-       __vue_options__.__file = 
"/Users/Hanks/Codes/work/incubator-weex/examples/vue/include/panel.vue"
-       __vue_options__.render = __vue_template__.render
-       __vue_options__.staticRenderFns = __vue_template__.staticRenderFns
-       __vue_options__._scopeId = "data-v-58511ff6"
-       __vue_options__.style = __vue_options__.style || {}
-       __vue_styles__.forEach(function (module) {
-         for (var name in module) {
-           __vue_options__.style[name] = module[name]
-         }
-       })
-       if (typeof __register_static_styles__ === "function") {
-         __register_static_styles__(__vue_options__._scopeId, __vue_styles__)
-       }
-
-       module.exports = __vue_exports__
-
-
-/***/ }),
-
-/***/ 4:
-/***/ (function(module, exports) {
-
-       module.exports = {
-         "panel": {
-           "marginBottom": 20,
-           "backgroundColor": "#ffffff",
-           "borderColor": "#dddddd",
-           "borderWidth": 1
-         },
-         "panel-primary": {
-           "borderColor": "rgb(40,96,144)"
-         },
-         "panel-success": {
-           "borderColor": "rgb(76,174,76)"
-         },
-         "panel-info": {
-           "borderColor": "rgb(70,184,218)"
-         },
-         "panel-warning": {
-           "borderColor": "rgb(238,162,54)"
-         },
-         "panel-danger": {
-           "borderColor": "rgb(212,63,58)"
-         },
-         "panel-header": {
-           "backgroundColor": "#f5f5f5",
-           "fontSize": 40,
-           "color": "#333333"
-         },
-         "panel-header-primary": {
-           "backgroundColor": "rgb(40,96,144)",
-           "color": "#ffffff"
-         },
-         "panel-header-success": {
-           "backgroundColor": "rgb(92,184,92)",
-           "color": "#ffffff"
-         },
-         "panel-header-info": {
-           "backgroundColor": "rgb(91,192,222)",
-           "color": "#ffffff"
-         },
-         "panel-header-warning": {
-           "backgroundColor": "rgb(240,173,78)",
-           "color": "#ffffff"
-         },
-         "panel-header-danger": {
-           "backgroundColor": "rgb(217,83,79)",
-           "color": "#ffffff"
-         },
-         "panel-body": {
-           "paddingLeft": 12,
-           "paddingRight": 12,
-           "paddingTop": 20,
-           "paddingBottom": 20
-         }
-       }
-
-/***/ }),
-
-/***/ 5:
-/***/ (function(module, exports) {
-
-       'use strict';
-
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-
-       module.exports = {
-         props: {
-           type: { default: 'default' },
-           title: { default: '' },
-           paddingBody: { default: 20 },
-           paddingHead: { default: 20 },
-           dataClass: { default: '' }, // FIXME transfer class
-           border: { default: 0 }
-         }
-       };
-
-/***/ }),
-
-/***/ 6:
-/***/ (function(module, exports) {
-
-       module.exports={render:function (){var _vm=this;var 
_h=_vm.$createElement;var _c=_vm._self._c||_h;
-         return _c('div', {
-           class: ['panel', 'panel-' + _vm.type],
-           style: {
-             borderWidth: _vm.border
-           }
-         }, [_c('text', {
-           class: ['panel-header', 'panel-header-' + _vm.type],
-           style: {
-             paddingTop: _vm.paddingHead,
-             paddingBottom: _vm.paddingHead,
-             paddingLeft: _vm.paddingHead * 1.5,
-             paddingRight: _vm.paddingHead * 1.5
-           }
-         }, [_vm._v(_vm._s(_vm.title))]), _c('div', {
-           class: ['panel-body', 'panel-body-' + _vm.type],
-           style: {
-             paddingTop: _vm.paddingBody,
-             paddingBottom: _vm.paddingBody,
-             paddingLeft: _vm.paddingBody * 1.5,
-             paddingRight: _vm.paddingBody * 1.5
-           }
-         }, [_vm._t("default")], 2)])
-       },staticRenderFns: []}
-       module.exports.render._withStripped = true
-
-/***/ }),
-
-/***/ 54:
-/***/ (function(module, exports) {
-
-       module.exports = {
-         "body": {
-           "backgroundColor": "#ffffff"
-         },
-         "slider": {
-           "flexDirection": "row",
-           "width": 690,
-           "height": 360
-         },
-         "indicator": {
-           "position": "absolute",
-           "width": 690,
-           "height": 420,
-           "top": 140,
-           "left": 240,
-           "itemColor": "#dddddd",
-           "itemSelectedColor": "rgb(40,96,144)"
-         }
-       }
-
-/***/ }),
-
-/***/ 55:
-/***/ (function(module, exports, __webpack_require__) {
-
-       'use strict';
-
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-
-       var img0 = 
'//gw.alicdn.com/tps/i2/TB1DpsmMpXXXXabaXXX20ySQVXX-512-512.png_400x400.jpg';
-       var img1 = 
'//gw.alicdn.com/tps/i1/TB1M3sQMpXXXXakXXXXApNeJVXX-360-360.png';
-       module.exports = {
-         data: function data() {
-           return {
-             eventCnt: 0,
-             togglePlayMsg: 'pause',
-             sliders: [{
-               interval: 1000,
-               autoPlay: true,
-               sliderPages: [{
-                 items: [{
-                   image: img0,
-                   link: '//h5.m.taobao.com/1'
-                 }, {
-                   image: img0,
-                   link: '//h5.m.taobao.com/1'
-                 }]
-               }, {
-                 items: [{
-                   image: img1,
-                   link: '//h5.m.taobao.com/1'
-                 }, {
-                   image: img1,
-                   link: '//h5.m.taobao.com/1'
-                 }]
-               }, {
-                 items: [{
-                   image: img0,
-                   link: '//h5.m.taobao.com/1'
-                 }, {
-                   image: img1,
-                   link: '//h5.m.taobao.com/1'
-                 }]
-               }]
-             }, {
-               interval: 3000,
-               autoPlay: true,
-               sliderPages: [{
-                 items: [{
-                   image: img0,
-                   link: '//h5.m.taobao.com/1'
-                 }, {
-                   image: img0,
-                   link: '//h5.m.taobao.com/1'
-                 }]
-               }, {
-                 items: [{
-                   image: img1,
-                   link: '//h5.m.taobao.com/1'
-                 }, {
-                   image: img1,
-                   link: '//h5.m.taobao.com/1'
-                 }]
-               }, {
-                 items: [{
-                   image: img0,
-                   link: '//h5.m.taobao.com/1'
-                 }, {
-                   image: img1,
-                   link: '//h5.m.taobao.com/1'
-                 }]
-               }]
-             }, {
-               interval: 5000,
-               autoPlay: true,
-               sliderPages: [{
-                 items: [{
-                   image: img0,
-                   link: '//h5.m.taobao.com/1'
-                 }, {
-                   image: img0,
-                   link: '//h5.m.taobao.com/1'
-                 }]
-               }, {
-                 items: [{
-                   image: img1,
-                   link: '//h5.m.taobao.com/1'
-                 }, {
-                   image: img1,
-                   link: '//h5.m.taobao.com/1'
-                 }]
-               }, {
-                 items: [{
-                   image: img0,
-                   link: '//h5.m.taobao.com/1'
-                 }, {
-                   image: img1,
-                   link: '//h5.m.taobao.com/1'
-                 }]
-               }]
-             }]
-           };
-         },
-         components: {
-           panel: __webpack_require__(3),
-           sliderPage: __webpack_require__(56)
-         },
-         methods: {
-           togglePlay: function togglePlay() {
-             var autoPlay = this.sliders[0].autoPlay;
-             autoPlay = !autoPlay;
-             this.sliders[0].autoPlay = autoPlay;
-             this.togglePlayMsg = autoPlay ? 'pause' : 'play';
-           },
-           handleSliderChange: function handleSliderChange() {
-             var nowCnt = this.eventCnt + 1;
-             this.eventCnt = nowCnt;
-           },
-           setInterval1: function setInterval1() {
-             this.sliders[0].interval = 1000;
-           },
-           setInterval3: function setInterval3() {
-             this.sliders[0].interval = 3000;
-           },
-           setInterval5: function setInterval5() {
-             this.sliders[0].interval = 5000;
-           }
-         }
-       };
-
-/***/ }),
-
-/***/ 56:
-/***/ (function(module, exports, __webpack_require__) {
-
-       var __vue_exports__, __vue_options__
-       var __vue_styles__ = []
-
-       /* styles */
-       __vue_styles__.push(__webpack_require__(57)
-       )
-
-       /* script */
-       __vue_exports__ = __webpack_require__(58)
-
-       /* template */
-       var __vue_template__ = __webpack_require__(63)
-       __vue_options__ = __vue_exports__ = __vue_exports__ || {}
-       if (
-         typeof __vue_exports__.default === "object" ||
-         typeof __vue_exports__.default === "function"
-       ) {
-       if (Object.keys(__vue_exports__).some(function (key) { return key !== 
"default" && key !== "__esModule" })) {console.error("named exports are not 
supported in *.vue files.")}
-       __vue_options__ = __vue_exports__ = __vue_exports__.default
-       }
-       if (typeof __vue_options__ === "function") {
-         __vue_options__ = __vue_options__.options
-       }
-       __vue_options__.__file = 
"/Users/Hanks/Codes/work/incubator-weex/examples/vue/include/slider-page.vue"
-       __vue_options__.render = __vue_template__.render
-       __vue_options__.staticRenderFns = __vue_template__.staticRenderFns
-       __vue_options__._scopeId = "data-v-e1f8e088"
-       __vue_options__.style = __vue_options__.style || {}
-       __vue_styles__.forEach(function (module) {
-         for (var name in module) {
-           __vue_options__.style[name] = module[name]
-         }
-       })
-       if (typeof __register_static_styles__ === "function") {
-         __register_static_styles__(__vue_options__._scopeId, __vue_styles__)
-       }
-
-       module.exports = __vue_exports__
-
-
-/***/ }),
-
-/***/ 57:
-/***/ (function(module, exports) {
-
-       module.exports = {
-         "slider-page": {
-           "flexDirection": "row",
-           "justifyContent": "space-between",
-           "width": 714,
-           "height": 420
-         }
-       }
-
-/***/ }),
-
-/***/ 58:
-/***/ (function(module, exports, __webpack_require__) {
-
-       'use strict';
-
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-
-       module.exports = {
-         props: {
-           items: { default: [] }
-         },
-         components: {
-           sliderItem: __webpack_require__(59)
-         }
-       };
-
-/***/ }),
-
-/***/ 59:
-/***/ (function(module, exports, __webpack_require__) {
-
-       var __vue_exports__, __vue_options__
-       var __vue_styles__ = []
-
-       /* styles */
-       __vue_styles__.push(__webpack_require__(60)
-       )
-
-       /* script */
-       __vue_exports__ = __webpack_require__(61)
-
-       /* template */
-       var __vue_template__ = __webpack_require__(62)
-       __vue_options__ = __vue_exports__ = __vue_exports__ || {}
-       if (
-         typeof __vue_exports__.default === "object" ||
-         typeof __vue_exports__.default === "function"
-       ) {
-       if (Object.keys(__vue_exports__).some(function (key) { return key !== 
"default" && key !== "__esModule" })) {console.error("named exports are not 
supported in *.vue files.")}
-       __vue_options__ = __vue_exports__ = __vue_exports__.default
-       }
-       if (typeof __vue_options__ === "function") {
-         __vue_options__ = __vue_options__.options
-       }
-       __vue_options__.__file = 
"/Users/Hanks/Codes/work/incubator-weex/examples/vue/include/slider-item.vue"
-       __vue_options__.render = __vue_template__.render
-       __vue_options__.staticRenderFns = __vue_template__.staticRenderFns
-       __vue_options__._scopeId = "data-v-bc0e7380"
-       __vue_options__.style = __vue_options__.style || {}
-       __vue_styles__.forEach(function (module) {
-         for (var name in module) {
-           __vue_options__.style[name] = module[name]
-         }
-       })
-       if (typeof __register_static_styles__ === "function") {
-         __register_static_styles__(__vue_options__._scopeId, __vue_styles__)
-       }
-
-       module.exports = __vue_exports__
-
-
-/***/ }),
-
-/***/ 60:
-/***/ (function(module, exports) {
-
-       module.exports = {
-         "slider-item": {
-           "width": 348,
-           "height": 400
-         }
-       }
-
-/***/ }),
-
-/***/ 61:
-/***/ (function(module, exports) {
-
-       'use strict';
-
-       //
-       //
-       //
-       //
-
-       module.exports = {
-         props: {
-           image: { default: '' },
-           link: { default: '' }
-         }
-       };
-
-/***/ }),
-
-/***/ 62:
-/***/ (function(module, exports) {
-
-       module.exports={render:function (){var _vm=this;var 
_h=_vm.$createElement;var _c=_vm._self._c||_h;
-         return _c('image', {
-           staticClass: ["slider-item"],
-           attrs: {
-             "src": _vm.image
-           }
-         })
-       },staticRenderFns: []}
-       module.exports.render._withStripped = true
-
-/***/ }),
-
-/***/ 63:
-/***/ (function(module, exports) {
-
-       module.exports={render:function (){var _vm=this;var 
_h=_vm.$createElement;var _c=_vm._self._c||_h;
-         return _c('div', {
-           staticClass: ["slider-page"]
-         }, _vm._l((_vm.items), function(v, i) {
-           return _c('slider-item', {
-             key: i,
-             attrs: {
-               "image": v.image,
-               "link": v.link
-             }
-           })
-         }))
-       },staticRenderFns: []}
-       module.exports.render._withStripped = true
-
-/***/ }),
-
-/***/ 64:
-/***/ (function(module, exports) {
-
-       module.exports={render:function (){var _vm=this;var 
_h=_vm.$createElement;var _c=_vm._self._c||_h;
-         return _c('scroller', {
-           staticClass: ["body"]
-         }, [_c('panel', {
-           attrs: {
-             "title": "auto-play",
-             "type": "primary"
-           }
-         }, [_c('panel', {
-           attrs: {
-             "title": "auto-play = false",
-             "paddingBody": "0"
-           }
-         }, [_c('slider', {
-           staticClass: ["slider"],
-           appendAsTree: true,
-           attrs: {
-             "append": "tree",
-             "interval": _vm.sliders[1].interval,
-             "autoPlay": "false"
-           }
-         }, [_c('indicator', {
-           staticClass: ["indicator"]
-         }), _vm._l((_vm.sliders[1].sliderPages), function(v, i) {
-           return _c('slider-page', {
-             key: i,
-             attrs: {
-               "items": v.items
-             }
-           })
-         })], 2)]), _c('panel', {
-           attrs: {
-             "title": "auto-play = true",
-             "paddingBody": "0"
-           }
-         }, [_c('slider', {
-           staticClass: ["slider"],
-           appendAsTree: true,
-           attrs: {
-             "append": "tree",
-             "interval": _vm.sliders[0].interval,
-             "autoPlay": _vm.sliders[0].autoPlay
-           }
-         }, [_c('indicator', {
-           staticClass: ["indicator"]
-         }), _vm._l((_vm.sliders[0].sliderPages), function(v) {
-           return _c('slider-page', {
-             key: v.index,
-             attrs: {
-               "items": v.items
-             }
-           })
-         })], 2)])], 1), _c('panel', {
-           attrs: {
-             "title": 'Event, ' + _vm.eventCnt + ' change',
-             "type": "primary"
-           }
-         }, [_c('slider', {
-           staticClass: ["slider"],
-           appendAsTree: true,
-           attrs: {
-             "append": "tree",
-             "interval": _vm.sliders[0].interval,
-             "autoPlay": _vm.sliders[0].autoPlay
-           },
-           on: {
-             "change": _vm.handleSliderChange
-           }
-         }, [_c('indicator', {
-           staticClass: ["indicator"]
-         }), _vm._l((_vm.sliders[0].sliderPages), function(v) {
-           return _c('slider-page', {
-             key: v.index,
-             attrs: {
-               "items": v.items
-             }
-           })
-         })], 2)]), _c('panel', {
-           attrs: {
-             "title": "Indicator",
-             "type": "primary"
-           }
-         }, [_c('panel', {
-           attrs: {
-             "title": "default style",
-             "paddingBody": "0"
-           }
-         }, [_c('slider', {
-           staticClass: ["slider"],
-           appendAsTree: true,
-           attrs: {
-             "append": "tree",
-             "interval": _vm.sliders[0].interval,
-             "autoPlay": _vm.sliders[0].autoPlay
-           },
-           on: {
-             "change": _vm.handleSliderChange
-           }
-         }, [_c('indicator', {
-           staticClass: ["indicator"]
-         }), _vm._l((_vm.sliders[0].sliderPages), function(v) {
-           return _c('slider-page', {
-             key: v.index,
-             attrs: {
-               "items": v.items
-             }
-           })
-         })], 2)]), _c('panel', {
-           attrs: {
-             "title": "width & height",
-             "paddingBody": "0"
-           }
-         }, [_c('slider', {
-           staticClass: ["slider"],
-           appendAsTree: true,
-           attrs: {
-             "append": "tree",
-             "interval": _vm.sliders[0].interval,
-             "autoPlay": _vm.sliders[0].autoPlay
-           }
-         }, [_c('indicator', {
-           staticStyle: {
-             itemColor: "#dddddd",
-             width: "714px",
-             height: "460px"
-           }
-         }), _vm._l((_vm.sliders[0].sliderPages), function(v) {
-           return _c('slider-page', {
-             key: v.index,
-             attrs: {
-               "items": v.items
-             }
-           })
-         })], 2)]), _c('panel', {
-           attrs: {
-             "title": "left & top",
-             "paddingBody": "0"
-           }
-         }, [_c('slider', {
-           staticClass: ["slider"],
-           appendAsTree: true,
-           attrs: {
-             "append": "tree",
-             "interval": _vm.sliders[1].interval,
-             "autoPlay": _vm.sliders[1].autoPlay
-           }
-         }, [_c('indicator', {
-           staticClass: ["indicator"],
-           staticStyle: {
-             top: "-140px",
-             left: "-240px"
-           }
-         }), _vm._l((_vm.sliders[1].sliderPages), function(v, i) {
-           return _c('slider-page', {
-             key: i,
-             attrs: {
-               "items": v.items
-             }
-           })
-         })], 2)]), _c('panel', {
-           attrs: {
-             "title": "itemColor & itemSelectedColor",
-             "paddingBody": "0"
-           }
-         }, [_c('slider', {
-           staticClass: ["slider"],
-           appendAsTree: true,
-           attrs: {
-             "append": "tree",
-             "interval": _vm.sliders[2].interval,
-             "autoPlay": _vm.sliders[2].autoPlay
-           }
-         }, [_c('indicator', {
-           staticClass: ["indicator"],
-           staticStyle: {
-             itemSelectedColor: "rgb(217, 83, 79)"
-           }
-         }), _vm._l((_vm.sliders[2].sliderPages), function(v) {
-           return _c('slider-page', {
-             key: v.index,
-             attrs: {
-               "items": v.items
-             }
-           })
-         })], 2)]), _c('panel', {
-           attrs: {
-             "title": "itemSize",
-             "paddingBody": "0"
-           }
-         }, [_c('slider', {
-           staticClass: ["slider"],
-           appendAsTree: true,
-           attrs: {
-             "append": "tree",
-             "interval": _vm.sliders[1].interval,
-             "autoPlay": _vm.sliders[1].autoPlay
-           }
-         }, [_c('indicator', {
-           staticStyle: {
-             itemColor: "#dddddd",
-             itemSize: "40px",
-             top: "140px",
-             left: "180px",
-             width: "700px",
-             height: "380px"
-           }
-         }), _vm._l((_vm.sliders[1].sliderPages), function(v, i) {
-           return _c('slider-page', {
-             key: i,
-             attrs: {
-               "items": v.items
-             }
-           })
-         })], 2)])], 1)], 1)
-       },staticRenderFns: []}
-       module.exports.render._withStripped = true
-
-/***/ })
-
-/******/ });
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/43564f3b/android/playground/app/src/main/assets/vue/components/sliderinfinite.js
----------------------------------------------------------------------
diff --git 
a/android/playground/app/src/main/assets/vue/components/sliderinfinite.js 
b/android/playground/app/src/main/assets/vue/components/sliderinfinite.js
deleted file mode 100644
index 131dd86..0000000
--- a/android/playground/app/src/main/assets/vue/components/sliderinfinite.js
+++ /dev/null
@@ -1,197 +0,0 @@
-// { "framework": "Vue" }
-
-/******/ (function(modules) { // webpackBootstrap
-/******/       // The module cache
-/******/       var installedModules = {};
-
-/******/       // The require function
-/******/       function __webpack_require__(moduleId) {
-
-/******/               // Check if module is in cache
-/******/               if(installedModules[moduleId])
-/******/                       return installedModules[moduleId].exports;
-
-/******/               // Create a new module (and put it into the cache)
-/******/               var module = installedModules[moduleId] = {
-/******/                       exports: {},
-/******/                       id: moduleId,
-/******/                       loaded: false
-/******/               };
-
-/******/               // Execute the module function
-/******/               modules[moduleId].call(module.exports, module, 
module.exports, __webpack_require__);
-
-/******/               // Flag the module as loaded
-/******/               module.loaded = true;
-
-/******/               // Return the exports of the module
-/******/               return module.exports;
-/******/       }
-
-
-/******/       // expose the modules object (__webpack_modules__)
-/******/       __webpack_require__.m = modules;
-
-/******/       // expose the module cache
-/******/       __webpack_require__.c = installedModules;
-
-/******/       // __webpack_public_path__
-/******/       __webpack_require__.p = "";
-
-/******/       // Load entry module and return exports
-/******/       return __webpack_require__(0);
-/******/ })
-/************************************************************************/
-/******/ ({
-
-/***/ 0:
-/***/ (function(module, exports, __webpack_require__) {
-
-       var __vue_exports__, __vue_options__
-       var __vue_styles__ = []
-
-       /* styles */
-       __vue_styles__.push(__webpack_require__(65)
-       )
-
-       /* script */
-       __vue_exports__ = __webpack_require__(66)
-
-       /* template */
-       var __vue_template__ = __webpack_require__(67)
-       __vue_options__ = __vue_exports__ = __vue_exports__ || {}
-       if (
-         typeof __vue_exports__.default === "object" ||
-         typeof __vue_exports__.default === "function"
-       ) {
-       if (Object.keys(__vue_exports__).some(function (key) { return key !== 
"default" && key !== "__esModule" })) {console.error("named exports are not 
supported in *.vue files.")}
-       __vue_options__ = __vue_exports__ = __vue_exports__.default
-       }
-       if (typeof __vue_options__ === "function") {
-         __vue_options__ = __vue_options__.options
-       }
-       __vue_options__.__file = 
"/Users/Hanks/Codes/work/incubator-weex/examples/vue/components/sliderinfinite.vue"
-       __vue_options__.render = __vue_template__.render
-       __vue_options__.staticRenderFns = __vue_template__.staticRenderFns
-       __vue_options__._scopeId = "data-v-e5bd1894"
-       __vue_options__.style = __vue_options__.style || {}
-       __vue_styles__.forEach(function (module) {
-         for (var name in module) {
-           __vue_options__.style[name] = module[name]
-         }
-       })
-       if (typeof __register_static_styles__ === "function") {
-         __register_static_styles__(__vue_options__._scopeId, __vue_styles__)
-       }
-
-       module.exports = __vue_exports__
-       module.exports.el = 'true'
-       new Vue(module.exports)
-
-
-/***/ }),
-
-/***/ 65:
-/***/ (function(module, exports) {
-
-       module.exports = {
-         "image": {
-           "width": 700,
-           "height": 300
-         },
-         "slider": {
-           "marginTop": 25,
-           "marginLeft": 25,
-           "width": 700,
-           "height": 300,
-           "borderWidth": 2,
-           "borderStyle": "solid",
-           "borderColor": "#41B883"
-         },
-         "frame": {
-           "width": 700,
-           "height": 300,
-           "position": "relative"
-         }
-       }
-
-/***/ }),
-
-/***/ 66:
-/***/ (function(module, exports) {
-
-       'use strict';
-
-       Object.defineProperty(exports, "__esModule", {
-         value: true
-       });
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-
-       exports.default = {
-         data: function data() {
-           return {
-             imageList: [{ src: 
'https://gw.alicdn.com/tfs/TB1SA2wQXXXXXXDapXXXXXXXXXX-1400-600.png' }, { src: 
'https://gw.alicdn.com/tfs/TB1KS_OQXXXXXcSXVXXXXXXXXXX-1400-600.png' }, { src: 
'https://gw.alicdn.com/tfs/TB1Ez7XQXXXXXbNXXXXXXXXXXXX-1400-600.png' }, { src: 
'https://gw.alicdn.com/tfs/TB1XLn6QXXXXXb2XpXXXXXXXXXX-1400-600.png' }]
-
-           };
-         }
-       };
-
-/***/ }),
-
-/***/ 67:
-/***/ (function(module, exports) {
-
-       module.exports={render:function (){var _vm=this;var 
_h=_vm.$createElement;var _c=_vm._self._c||_h;
-         return _c('div', [_c('slider', {
-           staticClass: ["slider"],
-           attrs: {
-             "interval": "3000",
-             "autoPlay": "true"
-           }
-         }, _vm._l((_vm.imageList), function(img) {
-           return _c('div', {
-             staticClass: ["frame"]
-           }, [_c('image', {
-             staticClass: ["image"],
-             attrs: {
-               "resize": "cover",
-               "src": img.src
-             }
-           })])
-         }))])
-       },staticRenderFns: []}
-       module.exports.render._withStripped = true
-
-/***/ })
-
-/******/ });
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/43564f3b/android/playground/app/src/main/assets/vue/components/tabbar.js
----------------------------------------------------------------------
diff --git a/android/playground/app/src/main/assets/vue/components/tabbar.js 
b/android/playground/app/src/main/assets/vue/components/tabbar.js
deleted file mode 100644
index aefc581..0000000
--- a/android/playground/app/src/main/assets/vue/components/tabbar.js
+++ /dev/null
@@ -1,632 +0,0 @@
-// { "framework": "Vue" }
-
-/******/ (function(modules) { // webpackBootstrap
-/******/       // The module cache
-/******/       var installedModules = {};
-
-/******/       // The require function
-/******/       function __webpack_require__(moduleId) {
-
-/******/               // Check if module is in cache
-/******/               if(installedModules[moduleId])
-/******/                       return installedModules[moduleId].exports;
-
-/******/               // Create a new module (and put it into the cache)
-/******/               var module = installedModules[moduleId] = {
-/******/                       exports: {},
-/******/                       id: moduleId,
-/******/                       loaded: false
-/******/               };
-
-/******/               // Execute the module function
-/******/               modules[moduleId].call(module.exports, module, 
module.exports, __webpack_require__);
-
-/******/               // Flag the module as loaded
-/******/               module.loaded = true;
-
-/******/               // Return the exports of the module
-/******/               return module.exports;
-/******/       }
-
-
-/******/       // expose the modules object (__webpack_modules__)
-/******/       __webpack_require__.m = modules;
-
-/******/       // expose the module cache
-/******/       __webpack_require__.c = installedModules;
-
-/******/       // __webpack_public_path__
-/******/       __webpack_require__.p = "";
-
-/******/       // Load entry module and return exports
-/******/       return __webpack_require__(0);
-/******/ })
-/************************************************************************/
-/******/ ({
-
-/***/ 0:
-/***/ (function(module, exports, __webpack_require__) {
-
-       var __vue_exports__, __vue_options__
-       var __vue_styles__ = []
-
-       /* script */
-       __vue_exports__ = __webpack_require__(68)
-
-       /* template */
-       var __vue_template__ = __webpack_require__(77)
-       __vue_options__ = __vue_exports__ = __vue_exports__ || {}
-       if (
-         typeof __vue_exports__.default === "object" ||
-         typeof __vue_exports__.default === "function"
-       ) {
-       if (Object.keys(__vue_exports__).some(function (key) { return key !== 
"default" && key !== "__esModule" })) {console.error("named exports are not 
supported in *.vue files.")}
-       __vue_options__ = __vue_exports__ = __vue_exports__.default
-       }
-       if (typeof __vue_options__ === "function") {
-         __vue_options__ = __vue_options__.options
-       }
-       __vue_options__.__file = 
"/Users/Hanks/Codes/work/incubator-weex/examples/vue/components/tabbar.vue"
-       __vue_options__.render = __vue_template__.render
-       __vue_options__.staticRenderFns = __vue_template__.staticRenderFns
-       __vue_options__.style = __vue_options__.style || {}
-       __vue_styles__.forEach(function (module) {
-         for (var name in module) {
-           __vue_options__.style[name] = module[name]
-         }
-       })
-       if (typeof __register_static_styles__ === "function") {
-         __register_static_styles__(__vue_options__._scopeId, __vue_styles__)
-       }
-
-       module.exports = __vue_exports__
-       module.exports.el = 'true'
-       new Vue(module.exports)
-
-
-/***/ }),
-
-/***/ 41:
-/***/ (function(module, exports) {
-
-       /*
-        * Licensed to the Apache Software Foundation (ASF) under one
-        * or more contributor license agreements.  See the NOTICE file
-        * distributed with this work for additional information
-        * regarding copyright ownership.  The ASF licenses this file
-        * to you under the Apache License, Version 2.0 (the
-        * "License"); you may not use this file except in compliance
-        * with the License.  You may obtain a copy of the License at
-        *
-        *   http://www.apache.org/licenses/LICENSE-2.0
-        *
-        * Unless required by applicable law or agreed to in writing,
-        * software distributed under the License is distributed on an
-        * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-        * KIND, either express or implied.  See the License for the
-        * specific language governing permissions and limitations
-        * under the License.
-        */
-       exports.getBaseURL = function (vm) {
-         var bundleUrl = weex.config.bundleUrl;
-         var nativeBase;
-         var isAndroidAssets = bundleUrl.indexOf('your_current_IP') >= 0 || 
bundleUrl.indexOf('file://assets/')>=0;
-         var isiOSAssets = bundleUrl.indexOf('file:///') >= 0 && 
bundleUrl.indexOf('WeexDemo.app') > 0;
-         if (isAndroidAssets) {
-           nativeBase = 'file://assets/';
-         }
-         else if (isiOSAssets) {
-           // 
file:///var/mobile/Containers/Bundle/Application/{id}/WeexDemo.app/
-           // 
file:///Users/{user}/Library/Developer/CoreSimulator/Devices/{id}/data/Containers/Bundle/Application/{id}/WeexDemo.app/
-           nativeBase = bundleUrl.substring(0, bundleUrl.lastIndexOf('/') + 1);
-         }
-         else {
-           var host = 'localhost:12580';
-           var matches = /\/\/([^\/]+?)\//.exec(weex.config.bundleUrl);
-           if (matches && matches.length >= 2) {
-             host = matches[1];
-           }
-           nativeBase = 'http://' + host + '/' + vm.dir + '/build/';
-         }
-         var h5Base = './vue.html?page=./' + vm.dir + '/build/';
-         // in Native
-         var base = nativeBase;
-         if (typeof window === 'object') {
-           // in Browser or WebView
-           base = h5Base;
-         }
-         return base
-       }
-
-
-/***/ }),
-
-/***/ 68:
-/***/ (function(module, exports, __webpack_require__) {
-
-       'use strict';
-
-       //
-       //
-       //
-       //
-       //
-       //
-
-       var getBaseURL = __webpack_require__(41).getBaseURL;
-       module.exports = {
-         data: function data() {
-           return {
-             dir: 'examples',
-             tabItems: [{
-               index: 0,
-               title: 'tab1',
-               titleColor: '#000000',
-               icon: '',
-               image: 
'http://gtms01.alicdn.com/tps/i1/TB1qw.hMpXXXXagXXXX9t7RGVXX-46-46.png',
-               selectedImage: 
'http://gtms04.alicdn.com/tps/i4/TB16jjPMpXXXXazXVXX9t7RGVXX-46-46.png',
-               src: 'component/tabbar/tabbar-item.js?itemId=tab1',
-               visibility: 'visible'
-             }, {
-               index: 1,
-               title: 'tab2',
-               titleColor: '#000000',
-               icon: '',
-               image: 
'http://gtms03.alicdn.com/tps/i3/TB1LEn9MpXXXXaUXpXX9t7RGVXX-46-46.png',
-               selectedImage: 
'http://gtms02.alicdn.com/tps/i2/TB1qysbMpXXXXcnXXXX9t7RGVXX-46-46.png',
-               src: 'component/tabbar/tabbar-item.js?itemId=tab2',
-               visibility: 'hidden'
-             }, {
-               index: 2,
-               title: 'tab3',
-               titleColor: '#000000',
-               icon: '',
-               image: 
'http://gtms01.alicdn.com/tps/i1/TB1B0v5MpXXXXcvXpXX9t7RGVXX-46-46.png',
-               selectedImage: 
'http://gtms04.alicdn.com/tps/i4/TB1NxY5MpXXXXcrXpXX9t7RGVXX-46-46.png',
-               src: 'component/tabbar/tabbar-item.js?itemId=tab3',
-               visibility: 'hidden'
-             }]
-           };
-         },
-         components: {
-           tabbar: __webpack_require__(69)
-         },
-         created: function created() {
-           var baseURL = getBaseURL(this);
-           for (var i = 0; i < this.tabItems.length; i++) {
-             var tabItem = this.tabItems[i];
-             tabItem.src = baseURL + tabItem.src;
-           }
-         },
-         methods: {
-           tabBarOnClick: function tabBarOnClick(e) {
-             console.log('tabBarOnClick', e.index);
-           }
-         }
-       };
-
-/***/ }),
-
-/***/ 69:
-/***/ (function(module, exports, __webpack_require__) {
-
-       var __vue_exports__, __vue_options__
-       var __vue_styles__ = []
-
-       /* styles */
-       __vue_styles__.push(__webpack_require__(70)
-       )
-
-       /* script */
-       __vue_exports__ = __webpack_require__(71)
-
-       /* template */
-       var __vue_template__ = __webpack_require__(76)
-       __vue_options__ = __vue_exports__ = __vue_exports__ || {}
-       if (
-         typeof __vue_exports__.default === "object" ||
-         typeof __vue_exports__.default === "function"
-       ) {
-       if (Object.keys(__vue_exports__).some(function (key) { return key !== 
"default" && key !== "__esModule" })) {console.error("named exports are not 
supported in *.vue files.")}
-       __vue_options__ = __vue_exports__ = __vue_exports__.default
-       }
-       if (typeof __vue_options__ === "function") {
-         __vue_options__ = __vue_options__.options
-       }
-       __vue_options__.__file = 
"/Users/Hanks/Codes/work/incubator-weex/examples/vue/include/tabbar.vue"
-       __vue_options__.render = __vue_template__.render
-       __vue_options__.staticRenderFns = __vue_template__.staticRenderFns
-       __vue_options__._scopeId = "data-v-285878a6"
-       __vue_options__.style = __vue_options__.style || {}
-       __vue_styles__.forEach(function (module) {
-         for (var name in module) {
-           __vue_options__.style[name] = module[name]
-         }
-       })
-       if (typeof __register_static_styles__ === "function") {
-         __register_static_styles__(__vue_options__._scopeId, __vue_styles__)
-       }
-
-       module.exports = __vue_exports__
-
-
-/***/ }),
-
-/***/ 70:
-/***/ (function(module, exports) {
-
-       module.exports = {
-         "wrapper": {
-           "width": 750,
-           "position": "absolute",
-           "top": 0,
-           "left": 0,
-           "right": 0,
-           "bottom": 0
-         },
-         "content": {
-           "position": "absolute",
-           "top": 0,
-           "left": 0,
-           "right": 0,
-           "bottom": 0,
-           "marginTop": 0,
-           "marginBottom": 88
-         },
-         "tabbar": {
-           "flexDirection": "row",
-           "position": "fixed",
-           "bottom": 0,
-           "left": 0,
-           "right": 0,
-           "height": 88
-         }
-       }
-
-/***/ }),
-
-/***/ 71:
-/***/ (function(module, exports, __webpack_require__) {
-
-       'use strict';
-
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-
-       module.exports = {
-         props: {
-           tabItems: { default: [] },
-           selectedColor: { default: '#ff0000' },
-           unselectedColor: { default: '#000000' }
-         },
-         data: function data() {
-           return {
-             selectedIndex: 0
-           };
-         },
-         components: {
-           tabitem: __webpack_require__(72)
-         },
-         created: function created() {
-           this.select(this.selectedIndex);
-         },
-         methods: {
-           tabItemOnClick: function tabItemOnClick(e) {
-             this.selectedIndex = e.index;
-             this.select(e.index);
-             this.$emit('tabBarOnClick', e);
-           },
-           select: function select(index) {
-             for (var i = 0; i < this.tabItems.length; i++) {
-               var tabItem = this.tabItems[i];
-               if (i == index) {
-                 tabItem.icon = tabItem.selectedImage;
-                 tabItem.titleColor = this.selectedColor;
-                 tabItem.visibility = 'visible';
-               } else {
-                 tabItem.icon = tabItem.image;
-                 tabItem.titleColor = this.unselectedColor;
-                 tabItem.visibility = 'hidden';
-               }
-             }
-           }
-         }
-       };
-
-/***/ }),
-
-/***/ 72:
-/***/ (function(module, exports, __webpack_require__) {
-
-       var __vue_exports__, __vue_options__
-       var __vue_styles__ = []
-
-       /* styles */
-       __vue_styles__.push(__webpack_require__(73)
-       )
-
-       /* script */
-       __vue_exports__ = __webpack_require__(74)
-
-       /* template */
-       var __vue_template__ = __webpack_require__(75)
-       __vue_options__ = __vue_exports__ = __vue_exports__ || {}
-       if (
-         typeof __vue_exports__.default === "object" ||
-         typeof __vue_exports__.default === "function"
-       ) {
-       if (Object.keys(__vue_exports__).some(function (key) { return key !== 
"default" && key !== "__esModule" })) {console.error("named exports are not 
supported in *.vue files.")}
-       __vue_options__ = __vue_exports__ = __vue_exports__.default
-       }
-       if (typeof __vue_options__ === "function") {
-         __vue_options__ = __vue_options__.options
-       }
-       __vue_options__.__file = 
"/Users/Hanks/Codes/work/incubator-weex/examples/vue/include/tabitem.vue"
-       __vue_options__.render = __vue_template__.render
-       __vue_options__.staticRenderFns = __vue_template__.staticRenderFns
-       __vue_options__._scopeId = "data-v-400b65e9"
-       __vue_options__.style = __vue_options__.style || {}
-       __vue_styles__.forEach(function (module) {
-         for (var name in module) {
-           __vue_options__.style[name] = module[name]
-         }
-       })
-       if (typeof __register_static_styles__ === "function") {
-         __register_static_styles__(__vue_options__._scopeId, __vue_styles__)
-       }
-
-       module.exports = __vue_exports__
-
-
-/***/ }),
-
-/***/ 73:
-/***/ (function(module, exports) {
-
-       module.exports = {
-         "container": {
-           "flex": 1,
-           "flexDirection": "column",
-           "alignItems": "center",
-           "justifyContent": "center",
-           "height": 88
-         },
-         "top-line": {
-           "position": "absolute",
-           "top": 0,
-           "left": 0,
-           "right": 0,
-           "height": 2
-         },
-         "tab-icon": {
-           "marginTop": 5,
-           "width": 40,
-           "height": 40
-         },
-         "tab-text": {
-           "marginTop": 5,
-           "textAlign": "center",
-           "fontSize": 20
-         }
-       }
-
-/***/ }),
-
-/***/ 74:
-/***/ (function(module, exports) {
-
-       'use strict';
-
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-
-       module.exports = {
-         props: {
-           index: { default: 0 },
-           title: { default: '' },
-           titleColor: { default: '#000000' },
-           icon: { default: '' },
-           backgroundColor: { default: '#ffffff' }
-         },
-         methods: {
-           onclickitem: function onclickitem(e) {
-             var params = {
-               index: this.index
-             };
-             this.$emit('tabItemOnClick', params);
-           }
-         }
-       };
-
-/***/ }),
-
-/***/ 75:
-/***/ (function(module, exports) {
-
-       module.exports={render:function (){var _vm=this;var 
_h=_vm.$createElement;var _c=_vm._self._c||_h;
-         return _c('div', {
-           staticClass: ["container"],
-           style: {
-             backgroundColor: _vm.backgroundColor
-           },
-           on: {
-             "click": _vm.onclickitem
-           }
-         }, [_c('image', {
-           staticClass: ["top-line"],
-           attrs: {
-             "src": 
"http://gtms03.alicdn.com/tps/i3/TB1mdsiMpXXXXXpXXXXNw4JIXXX-640-4.png";
-           }
-         }), _c('image', {
-           staticClass: ["tab-icon"],
-           attrs: {
-             "src": _vm.icon
-           }
-         }), _c('text', {
-           staticClass: ["tab-text"],
-           style: {
-             color: _vm.titleColor
-           }
-         }, [_vm._v(_vm._s(_vm.title))])])
-       },staticRenderFns: []}
-       module.exports.render._withStripped = true
-
-/***/ }),
-
-/***/ 76:
-/***/ (function(module, exports) {
-
-       module.exports={render:function (){var _vm=this;var 
_h=_vm.$createElement;var _c=_vm._self._c||_h;
-         return _c('div', {
-           staticClass: ["wrapper"]
-         }, [_vm._l((_vm.tabItems), function(item, i) {
-           return _c('embed', {
-             key: i,
-             staticClass: ["content"],
-             style: {
-               visibility: item.visibility
-             },
-             attrs: {
-               "src": item.src,
-               "type": "weex"
-             }
-           })
-         }), _c('div', {
-           staticClass: ["tabbar"],
-           appendAsTree: true,
-           attrs: {
-             "append": "tree"
-           }
-         }, _vm._l((_vm.tabItems), function(item) {
-           return _c('tabitem', {
-             key: item.index,
-             attrs: {
-               "index": item.index,
-               "icon": item.icon,
-               "title": item.title,
-               "titleColor": item.titleColor
-             },
-             on: {
-               "tabItemOnClick": _vm.tabItemOnClick
-             }
-           })
-         }))], 2)
-       },staticRenderFns: []}
-       module.exports.render._withStripped = true
-
-/***/ }),
-
-/***/ 77:
-/***/ (function(module, exports) {
-
-       module.exports={render:function (){var _vm=this;var 
_h=_vm.$createElement;var _c=_vm._self._c||_h;
-         return _c('div', {
-           staticStyle: {
-             flexDirection: "column"
-           }
-         }, [_c('tabbar', {
-           attrs: {
-             "tabItems": _vm.tabItems
-           },
-           on: {
-             "tabBarOnClick": _vm.tabBarOnClick
-           }
-         })])
-       },staticRenderFns: []}
-       module.exports.render._withStripped = true
-
-/***/ })
-
-/******/ });
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/43564f3b/android/playground/app/src/main/assets/vue/components/text.js
----------------------------------------------------------------------
diff --git a/android/playground/app/src/main/assets/vue/components/text.js 
b/android/playground/app/src/main/assets/vue/components/text.js
deleted file mode 100644
index ec7f6c2..0000000
--- a/android/playground/app/src/main/assets/vue/components/text.js
+++ /dev/null
@@ -1,527 +0,0 @@
-// { "framework": "Vue" }
-
-/******/ (function(modules) { // webpackBootstrap
-/******/       // The module cache
-/******/       var installedModules = {};
-
-/******/       // The require function
-/******/       function __webpack_require__(moduleId) {
-
-/******/               // Check if module is in cache
-/******/               if(installedModules[moduleId])
-/******/                       return installedModules[moduleId].exports;
-
-/******/               // Create a new module (and put it into the cache)
-/******/               var module = installedModules[moduleId] = {
-/******/                       exports: {},
-/******/                       id: moduleId,
-/******/                       loaded: false
-/******/               };
-
-/******/               // Execute the module function
-/******/               modules[moduleId].call(module.exports, module, 
module.exports, __webpack_require__);
-
-/******/               // Flag the module as loaded
-/******/               module.loaded = true;
-
-/******/               // Return the exports of the module
-/******/               return module.exports;
-/******/       }
-
-
-/******/       // expose the modules object (__webpack_modules__)
-/******/       __webpack_require__.m = modules;
-
-/******/       // expose the module cache
-/******/       __webpack_require__.c = installedModules;
-
-/******/       // __webpack_public_path__
-/******/       __webpack_require__.p = "";
-
-/******/       // Load entry module and return exports
-/******/       return __webpack_require__(0);
-/******/ })
-/************************************************************************/
-/******/ ({
-
-/***/ 0:
-/***/ (function(module, exports, __webpack_require__) {
-
-       var __vue_exports__, __vue_options__
-       var __vue_styles__ = []
-
-       /* styles */
-       __vue_styles__.push(__webpack_require__(78)
-       )
-
-       /* script */
-       __vue_exports__ = __webpack_require__(79)
-
-       /* template */
-       var __vue_template__ = __webpack_require__(80)
-       __vue_options__ = __vue_exports__ = __vue_exports__ || {}
-       if (
-         typeof __vue_exports__.default === "object" ||
-         typeof __vue_exports__.default === "function"
-       ) {
-       if (Object.keys(__vue_exports__).some(function (key) { return key !== 
"default" && key !== "__esModule" })) {console.error("named exports are not 
supported in *.vue files.")}
-       __vue_options__ = __vue_exports__ = __vue_exports__.default
-       }
-       if (typeof __vue_options__ === "function") {
-         __vue_options__ = __vue_options__.options
-       }
-       __vue_options__.__file = 
"/Users/Hanks/Codes/work/incubator-weex/examples/vue/components/text.vue"
-       __vue_options__.render = __vue_template__.render
-       __vue_options__.staticRenderFns = __vue_template__.staticRenderFns
-       __vue_options__._scopeId = "data-v-c5678ba4"
-       __vue_options__.style = __vue_options__.style || {}
-       __vue_styles__.forEach(function (module) {
-         for (var name in module) {
-           __vue_options__.style[name] = module[name]
-         }
-       })
-       if (typeof __register_static_styles__ === "function") {
-         __register_static_styles__(__vue_options__._scopeId, __vue_styles__)
-       }
-
-       module.exports = __vue_exports__
-       module.exports.el = 'true'
-       new Vue(module.exports)
-
-
-/***/ }),
-
-/***/ 3:
-/***/ (function(module, exports, __webpack_require__) {
-
-       var __vue_exports__, __vue_options__
-       var __vue_styles__ = []
-
-       /* styles */
-       __vue_styles__.push(__webpack_require__(4)
-       )
-
-       /* script */
-       __vue_exports__ = __webpack_require__(5)
-
-       /* template */
-       var __vue_template__ = __webpack_require__(6)
-       __vue_options__ = __vue_exports__ = __vue_exports__ || {}
-       if (
-         typeof __vue_exports__.default === "object" ||
-         typeof __vue_exports__.default === "function"
-       ) {
-       if (Object.keys(__vue_exports__).some(function (key) { return key !== 
"default" && key !== "__esModule" })) {console.error("named exports are not 
supported in *.vue files.")}
-       __vue_options__ = __vue_exports__ = __vue_exports__.default
-       }
-       if (typeof __vue_options__ === "function") {
-         __vue_options__ = __vue_options__.options
-       }
-       __vue_options__.__file = 
"/Users/Hanks/Codes/work/incubator-weex/examples/vue/include/panel.vue"
-       __vue_options__.render = __vue_template__.render
-       __vue_options__.staticRenderFns = __vue_template__.staticRenderFns
-       __vue_options__._scopeId = "data-v-58511ff6"
-       __vue_options__.style = __vue_options__.style || {}
-       __vue_styles__.forEach(function (module) {
-         for (var name in module) {
-           __vue_options__.style[name] = module[name]
-         }
-       })
-       if (typeof __register_static_styles__ === "function") {
-         __register_static_styles__(__vue_options__._scopeId, __vue_styles__)
-       }
-
-       module.exports = __vue_exports__
-
-
-/***/ }),
-
-/***/ 4:
-/***/ (function(module, exports) {
-
-       module.exports = {
-         "panel": {
-           "marginBottom": 20,
-           "backgroundColor": "#ffffff",
-           "borderColor": "#dddddd",
-           "borderWidth": 1
-         },
-         "panel-primary": {
-           "borderColor": "rgb(40,96,144)"
-         },
-         "panel-success": {
-           "borderColor": "rgb(76,174,76)"
-         },
-         "panel-info": {
-           "borderColor": "rgb(70,184,218)"
-         },
-         "panel-warning": {
-           "borderColor": "rgb(238,162,54)"
-         },
-         "panel-danger": {
-           "borderColor": "rgb(212,63,58)"
-         },
-         "panel-header": {
-           "backgroundColor": "#f5f5f5",
-           "fontSize": 40,
-           "color": "#333333"
-         },
-         "panel-header-primary": {
-           "backgroundColor": "rgb(40,96,144)",
-           "color": "#ffffff"
-         },
-         "panel-header-success": {
-           "backgroundColor": "rgb(92,184,92)",
-           "color": "#ffffff"
-         },
-         "panel-header-info": {
-           "backgroundColor": "rgb(91,192,222)",
-           "color": "#ffffff"
-         },
-         "panel-header-warning": {
-           "backgroundColor": "rgb(240,173,78)",
-           "color": "#ffffff"
-         },
-         "panel-header-danger": {
-           "backgroundColor": "rgb(217,83,79)",
-           "color": "#ffffff"
-         },
-         "panel-body": {
-           "paddingLeft": 12,
-           "paddingRight": 12,
-           "paddingTop": 20,
-           "paddingBottom": 20
-         }
-       }
-
-/***/ }),
-
-/***/ 5:
-/***/ (function(module, exports) {
-
-       'use strict';
-
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-
-       module.exports = {
-         props: {
-           type: { default: 'default' },
-           title: { default: '' },
-           paddingBody: { default: 20 },
-           paddingHead: { default: 20 },
-           dataClass: { default: '' }, // FIXME transfer class
-           border: { default: 0 }
-         }
-       };
-
-/***/ }),
-
-/***/ 6:
-/***/ (function(module, exports) {
-
-       module.exports={render:function (){var _vm=this;var 
_h=_vm.$createElement;var _c=_vm._self._c||_h;
-         return _c('div', {
-           class: ['panel', 'panel-' + _vm.type],
-           style: {
-             borderWidth: _vm.border
-           }
-         }, [_c('text', {
-           class: ['panel-header', 'panel-header-' + _vm.type],
-           style: {
-             paddingTop: _vm.paddingHead,
-             paddingBottom: _vm.paddingHead,
-             paddingLeft: _vm.paddingHead * 1.5,
-             paddingRight: _vm.paddingHead * 1.5
-           }
-         }, [_vm._v(_vm._s(_vm.title))]), _c('div', {
-           class: ['panel-body', 'panel-body-' + _vm.type],
-           style: {
-             paddingTop: _vm.paddingBody,
-             paddingBottom: _vm.paddingBody,
-             paddingLeft: _vm.paddingBody * 1.5,
-             paddingRight: _vm.paddingBody * 1.5
-           }
-         }, [_vm._t("default")], 2)])
-       },staticRenderFns: []}
-       module.exports.render._withStripped = true
-
-/***/ }),
-
-/***/ 78:
-/***/ (function(module, exports) {
-
-       module.exports = {
-         "txt": {
-           "marginBottom": 12,
-           "fontSize": 40
-         }
-       }
-
-/***/ }),
-
-/***/ 79:
-/***/ (function(module, exports, __webpack_require__) {
-
-       'use strict';
-
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-
-       module.exports = {
-         components: {
-           panel: __webpack_require__(3)
-         }
-       };
-
-/***/ }),
-
-/***/ 80:
-/***/ (function(module, exports) {
-
-       module.exports={render:function (){var _vm=this;var 
_h=_vm.$createElement;var _c=_vm._self._c||_h;
-         return _c('scroller', [_c('panel', {
-           attrs: {
-             "title": "color",
-             "type": "primary"
-           }
-         }, [_c('text', {
-           staticClass: ["txt"]
-         }, [_vm._v("default is black")]), _c('text', {
-           staticClass: ["txt"],
-           staticStyle: {
-             color: "#286090"
-           }
-         }, [_vm._v("#286090")]), _c('text', {
-           staticClass: ["txt"],
-           staticStyle: {
-             color: "#0f0"
-           }
-         }, [_vm._v("#0f0")]), _c('text', {
-           staticClass: ["txt"],
-           staticStyle: {
-             color: "red"
-           }
-         }, [_vm._v("keyword")]), _c('text', {
-           staticClass: ["txt"],
-           staticStyle: {
-             color: "rgb(238, 162, 54)"
-           }
-         }, [_vm._v("rgb(238, 162, 54)")]), _c('text', {
-           staticClass: ["txt"],
-           staticStyle: {
-             color: "rgba(238, 162, 54, 0.5)"
-           }
-         }, [_vm._v("rgba(238, 162, 54, 0.5)")])]), _c('panel', {
-           attrs: {
-             "title": "font-size",
-             "type": "primary"
-           }
-         }, [_c('text', {
-           staticClass: ["txt"],
-           staticStyle: {
-             fontSize: "32px"
-           }
-         }, [_vm._v("32")]), _c('text', {
-           staticClass: ["txt"],
-           staticStyle: {
-             fontSize: "64px"
-           }
-         }, [_vm._v("64")]), _c('text', {
-           staticClass: ["txt"],
-           staticStyle: {
-             fontSize: "100px"
-           }
-         }, [_vm._v("100")])]), _c('panel', {
-           attrs: {
-             "title": "font-style",
-             "type": "primary"
-           }
-         }, [_c('text', {
-           staticClass: ["txt"],
-           staticStyle: {
-             fontStyle: "normal"
-           }
-         }, [_vm._v("normal")]), _c('text', {
-           staticClass: ["txt"],
-           staticStyle: {
-             fontStyle: "italic"
-           }
-         }, [_vm._v("italic")])]), _c('panel', {
-           attrs: {
-             "title": "font-weight",
-             "type": "primary"
-           }
-         }, [_c('text', {
-           staticClass: ["txt"],
-           staticStyle: {
-             fontWeight: "normal"
-           }
-         }, [_vm._v("normal")]), _c('text', {
-           staticClass: ["txt"],
-           staticStyle: {
-             fontWeight: "bold"
-           }
-         }, [_vm._v("bold")])]), _c('panel', {
-           attrs: {
-             "title": "text-decoration",
-             "type": "primary"
-           }
-         }, [_c('text', {
-           staticClass: ["txt"],
-           staticStyle: {
-             textDecoration: "none"
-           }
-         }, [_vm._v("none")]), _c('text', {
-           staticClass: ["txt"],
-           staticStyle: {
-             textDecoration: "underline"
-           }
-         }, [_vm._v("underline")]), _c('text', {
-           staticClass: ["txt"],
-           staticStyle: {
-             textDecoration: "line-through"
-           }
-         }, [_vm._v("line-through")])]), _c('panel', {
-           attrs: {
-             "title": "text-align",
-             "type": "primary"
-           }
-         }, [_c('text', {
-           staticClass: ["txt"],
-           staticStyle: {
-             textAlign: "left"
-           }
-         }, [_vm._v("left")]), _c('text', {
-           staticClass: ["txt"],
-           staticStyle: {
-             textAlign: "center"
-           }
-         }, [_vm._v("center")]), _c('text', {
-           staticClass: ["txt"],
-           staticStyle: {
-             textAlign: "right"
-           }
-         }, [_vm._v("right")])]), _c('panel', {
-           attrs: {
-             "title": "text-overflow",
-             "type": "primary"
-           }
-         }, [_c('text', {
-           staticClass: ["txt"],
-           staticStyle: {
-             lines: "1"
-           }
-         }, [_vm._v("no text-overflow, no text-overflow")]), _c('text', {
-           staticClass: ["txt"],
-           staticStyle: {
-             textOverflow: "clip",
-             width: "450px",
-             lines: "1"
-           }
-         }, [_vm._v("text-overflow: clip, text-overflow: clip")]), _c('text', {
-           staticClass: ["txt"],
-           staticStyle: {
-             textOverflow: "ellipsis",
-             width: "450px",
-             lines: "1"
-           }
-         }, [_vm._v("text-overflow: ellipsis, text-overflow: ellipsis")])]), 
_c('panel', {
-           attrs: {
-             "title": "line-height",
-             "type": "primary"
-           }
-         }, [_c('text', {
-           staticClass: ["txt"]
-         }, [_vm._v("no lineheight setting")]), _c('text', {
-           staticClass: ["txt"],
-           staticStyle: {
-             lineHeight: "50px"
-           }
-         }, [_vm._v("lineheight 50")]), _c('text', {
-           staticClass: ["txt"],
-           staticStyle: {
-             lineHeight: "80px"
-           }
-         }, [_vm._v(" lineheight 80")])])], 1)
-       },staticRenderFns: []}
-       module.exports.render._withStripped = true
-
-/***/ })
-
-/******/ });
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/43564f3b/android/playground/app/src/main/assets/vue/components/textarea.js
----------------------------------------------------------------------
diff --git a/android/playground/app/src/main/assets/vue/components/textarea.js 
b/android/playground/app/src/main/assets/vue/components/textarea.js
deleted file mode 100644
index 04e13d9..0000000
--- a/android/playground/app/src/main/assets/vue/components/textarea.js
+++ /dev/null
@@ -1,380 +0,0 @@
-// { "framework": "Vue" }
-
-/******/ (function(modules) { // webpackBootstrap
-/******/       // The module cache
-/******/       var installedModules = {};
-
-/******/       // The require function
-/******/       function __webpack_require__(moduleId) {
-
-/******/               // Check if module is in cache
-/******/               if(installedModules[moduleId])
-/******/                       return installedModules[moduleId].exports;
-
-/******/               // Create a new module (and put it into the cache)
-/******/               var module = installedModules[moduleId] = {
-/******/                       exports: {},
-/******/                       id: moduleId,
-/******/                       loaded: false
-/******/               };
-
-/******/               // Execute the module function
-/******/               modules[moduleId].call(module.exports, module, 
module.exports, __webpack_require__);
-
-/******/               // Flag the module as loaded
-/******/               module.loaded = true;
-
-/******/               // Return the exports of the module
-/******/               return module.exports;
-/******/       }
-
-
-/******/       // expose the modules object (__webpack_modules__)
-/******/       __webpack_require__.m = modules;
-
-/******/       // expose the module cache
-/******/       __webpack_require__.c = installedModules;
-
-/******/       // __webpack_public_path__
-/******/       __webpack_require__.p = "";
-
-/******/       // Load entry module and return exports
-/******/       return __webpack_require__(0);
-/******/ })
-/************************************************************************/
-/******/ ({
-
-/***/ 0:
-/***/ (function(module, exports, __webpack_require__) {
-
-       var __vue_exports__, __vue_options__
-       var __vue_styles__ = []
-
-       /* styles */
-       __vue_styles__.push(__webpack_require__(81)
-       )
-
-       /* script */
-       __vue_exports__ = __webpack_require__(82)
-
-       /* template */
-       var __vue_template__ = __webpack_require__(83)
-       __vue_options__ = __vue_exports__ = __vue_exports__ || {}
-       if (
-         typeof __vue_exports__.default === "object" ||
-         typeof __vue_exports__.default === "function"
-       ) {
-       if (Object.keys(__vue_exports__).some(function (key) { return key !== 
"default" && key !== "__esModule" })) {console.error("named exports are not 
supported in *.vue files.")}
-       __vue_options__ = __vue_exports__ = __vue_exports__.default
-       }
-       if (typeof __vue_options__ === "function") {
-         __vue_options__ = __vue_options__.options
-       }
-       __vue_options__.__file = 
"/Users/Hanks/Codes/work/incubator-weex/examples/vue/components/textarea.vue"
-       __vue_options__.render = __vue_template__.render
-       __vue_options__.staticRenderFns = __vue_template__.staticRenderFns
-       __vue_options__._scopeId = "data-v-0dfb413b"
-       __vue_options__.style = __vue_options__.style || {}
-       __vue_styles__.forEach(function (module) {
-         for (var name in module) {
-           __vue_options__.style[name] = module[name]
-         }
-       })
-       if (typeof __register_static_styles__ === "function") {
-         __register_static_styles__(__vue_options__._scopeId, __vue_styles__)
-       }
-
-       module.exports = __vue_exports__
-       module.exports.el = 'true'
-       new Vue(module.exports)
-
-
-/***/ }),
-
-/***/ 3:
-/***/ (function(module, exports, __webpack_require__) {
-
-       var __vue_exports__, __vue_options__
-       var __vue_styles__ = []
-
-       /* styles */
-       __vue_styles__.push(__webpack_require__(4)
-       )
-
-       /* script */
-       __vue_exports__ = __webpack_require__(5)
-
-       /* template */
-       var __vue_template__ = __webpack_require__(6)
-       __vue_options__ = __vue_exports__ = __vue_exports__ || {}
-       if (
-         typeof __vue_exports__.default === "object" ||
-         typeof __vue_exports__.default === "function"
-       ) {
-       if (Object.keys(__vue_exports__).some(function (key) { return key !== 
"default" && key !== "__esModule" })) {console.error("named exports are not 
supported in *.vue files.")}
-       __vue_options__ = __vue_exports__ = __vue_exports__.default
-       }
-       if (typeof __vue_options__ === "function") {
-         __vue_options__ = __vue_options__.options
-       }
-       __vue_options__.__file = 
"/Users/Hanks/Codes/work/incubator-weex/examples/vue/include/panel.vue"
-       __vue_options__.render = __vue_template__.render
-       __vue_options__.staticRenderFns = __vue_template__.staticRenderFns
-       __vue_options__._scopeId = "data-v-58511ff6"
-       __vue_options__.style = __vue_options__.style || {}
-       __vue_styles__.forEach(function (module) {
-         for (var name in module) {
-           __vue_options__.style[name] = module[name]
-         }
-       })
-       if (typeof __register_static_styles__ === "function") {
-         __register_static_styles__(__vue_options__._scopeId, __vue_styles__)
-       }
-
-       module.exports = __vue_exports__
-
-
-/***/ }),
-
-/***/ 4:
-/***/ (function(module, exports) {
-
-       module.exports = {
-         "panel": {
-           "marginBottom": 20,
-           "backgroundColor": "#ffffff",
-           "borderColor": "#dddddd",
-           "borderWidth": 1
-         },
-         "panel-primary": {
-           "borderColor": "rgb(40,96,144)"
-         },
-         "panel-success": {
-           "borderColor": "rgb(76,174,76)"
-         },
-         "panel-info": {
-           "borderColor": "rgb(70,184,218)"
-         },
-         "panel-warning": {
-           "borderColor": "rgb(238,162,54)"
-         },
-         "panel-danger": {
-           "borderColor": "rgb(212,63,58)"
-         },
-         "panel-header": {
-           "backgroundColor": "#f5f5f5",
-           "fontSize": 40,
-           "color": "#333333"
-         },
-         "panel-header-primary": {
-           "backgroundColor": "rgb(40,96,144)",
-           "color": "#ffffff"
-         },
-         "panel-header-success": {
-           "backgroundColor": "rgb(92,184,92)",
-           "color": "#ffffff"
-         },
-         "panel-header-info": {
-           "backgroundColor": "rgb(91,192,222)",
-           "color": "#ffffff"
-         },
-         "panel-header-warning": {
-           "backgroundColor": "rgb(240,173,78)",
-           "color": "#ffffff"
-         },
-         "panel-header-danger": {
-           "backgroundColor": "rgb(217,83,79)",
-           "color": "#ffffff"
-         },
-         "panel-body": {
-           "paddingLeft": 12,
-           "paddingRight": 12,
-           "paddingTop": 20,
-           "paddingBottom": 20
-         }
-       }
-
-/***/ }),
-
-/***/ 5:
-/***/ (function(module, exports) {
-
-       'use strict';
-
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-
-       module.exports = {
-         props: {
-           type: { default: 'default' },
-           title: { default: '' },
-           paddingBody: { default: 20 },
-           paddingHead: { default: 20 },
-           dataClass: { default: '' }, // FIXME transfer class
-           border: { default: 0 }
-         }
-       };
-
-/***/ }),
-
-/***/ 6:
-/***/ (function(module, exports) {
-
-       module.exports={render:function (){var _vm=this;var 
_h=_vm.$createElement;var _c=_vm._self._c||_h;
-         return _c('div', {
-           class: ['panel', 'panel-' + _vm.type],
-           style: {
-             borderWidth: _vm.border
-           }
-         }, [_c('text', {
-           class: ['panel-header', 'panel-header-' + _vm.type],
-           style: {
-             paddingTop: _vm.paddingHead,
-             paddingBottom: _vm.paddingHead,
-             paddingLeft: _vm.paddingHead * 1.5,
-             paddingRight: _vm.paddingHead * 1.5
-           }
-         }, [_vm._v(_vm._s(_vm.title))]), _c('div', {
-           class: ['panel-body', 'panel-body-' + _vm.type],
-           style: {
-             paddingTop: _vm.paddingBody,
-             paddingBottom: _vm.paddingBody,
-             paddingLeft: _vm.paddingBody * 1.5,
-             paddingRight: _vm.paddingBody * 1.5
-           }
-         }, [_vm._t("default")], 2)])
-       },staticRenderFns: []}
-       module.exports.render._withStripped = true
-
-/***/ }),
-
-/***/ 81:
-/***/ (function(module, exports) {
-
-       module.exports = {
-         "textarea": {
-           "fontSize": 30,
-           "height": 280,
-           "width": 400,
-           "borderWidth": 2,
-           "borderColor": "#cccccc"
-         }
-       }
-
-/***/ }),
-
-/***/ 82:
-/***/ (function(module, exports, __webpack_require__) {
-
-       'use strict';
-
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-
-       var modal = weex.requireModule('modal');
-       module.exports = {
-         data: function data() {
-           return {
-             txtInput: '',
-             txtChange: '',
-             returnType: '',
-             msg: ''
-           };
-         },
-         components: {
-           panel: __webpack_require__(3)
-         },
-         methods: {
-           onchange: function onchange(event) {
-             this.txtChange = event.value;
-           },
-           oninput: function oninput(event) {
-             this.txtInput = event.value;
-           },
-           onreturn: function onreturn(event) {
-             this.returnType = event.returnKeyType;
-             this.msg = 'You are "' + this.returnType + '" ' + event.value;
-           }
-         }
-       };
-
-/***/ }),
-
-/***/ 83:
-/***/ (function(module, exports) {
-
-       module.exports={render:function (){var _vm=this;var 
_h=_vm.$createElement;var _c=_vm._self._c||_h;
-         return _c('scroller', [_c('panel', {
-           attrs: {
-             "title": "textarea",
-             "type": "primary"
-           }
-         }, [_c('textarea', {
-           staticClass: ["textarea"],
-           attrs: {
-             "autofocus": "true",
-             "returnKeyType": "done"
-           },
-           on: {
-             "return": _vm.onreturn,
-             "change": _vm.onchange,
-             "input": _vm.oninput
-           }
-         }), _c('text', [_vm._v("oninput: " + _vm._s(_vm.txtInput))]), 
_c('text', [_vm._v("onchange: " + _vm._s(_vm.txtChange))]), _c('text', 
[_vm._v("enter key type: " + _vm._s(_vm.returnType))]), _c('text', 
[_vm._v("action: " + _vm._s(_vm.msg))])])], 1)
-       },staticRenderFns: []}
-       module.exports.render._withStripped = true
-
-/***/ })
-
-/******/ });
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/43564f3b/android/playground/app/src/main/assets/vue/components/video.js
----------------------------------------------------------------------
diff --git a/android/playground/app/src/main/assets/vue/components/video.js 
b/android/playground/app/src/main/assets/vue/components/video.js
deleted file mode 100644
index fc68718..0000000
--- a/android/playground/app/src/main/assets/vue/components/video.js
+++ /dev/null
@@ -1,404 +0,0 @@
-// { "framework": "Vue" }
-
-/******/ (function(modules) { // webpackBootstrap
-/******/       // The module cache
-/******/       var installedModules = {};
-
-/******/       // The require function
-/******/       function __webpack_require__(moduleId) {
-
-/******/               // Check if module is in cache
-/******/               if(installedModules[moduleId])
-/******/                       return installedModules[moduleId].exports;
-
-/******/               // Create a new module (and put it into the cache)
-/******/               var module = installedModules[moduleId] = {
-/******/                       exports: {},
-/******/                       id: moduleId,
-/******/                       loaded: false
-/******/               };
-
-/******/               // Execute the module function
-/******/               modules[moduleId].call(module.exports, module, 
module.exports, __webpack_require__);
-
-/******/               // Flag the module as loaded
-/******/               module.loaded = true;
-
-/******/               // Return the exports of the module
-/******/               return module.exports;
-/******/       }
-
-
-/******/       // expose the modules object (__webpack_modules__)
-/******/       __webpack_require__.m = modules;
-
-/******/       // expose the module cache
-/******/       __webpack_require__.c = installedModules;
-
-/******/       // __webpack_public_path__
-/******/       __webpack_require__.p = "";
-
-/******/       // Load entry module and return exports
-/******/       return __webpack_require__(0);
-/******/ })
-/************************************************************************/
-/******/ ({
-
-/***/ 0:
-/***/ (function(module, exports, __webpack_require__) {
-
-       var __vue_exports__, __vue_options__
-       var __vue_styles__ = []
-
-       /* styles */
-       __vue_styles__.push(__webpack_require__(84)
-       )
-
-       /* script */
-       __vue_exports__ = __webpack_require__(85)
-
-       /* template */
-       var __vue_template__ = __webpack_require__(86)
-       __vue_options__ = __vue_exports__ = __vue_exports__ || {}
-       if (
-         typeof __vue_exports__.default === "object" ||
-         typeof __vue_exports__.default === "function"
-       ) {
-       if (Object.keys(__vue_exports__).some(function (key) { return key !== 
"default" && key !== "__esModule" })) {console.error("named exports are not 
supported in *.vue files.")}
-       __vue_options__ = __vue_exports__ = __vue_exports__.default
-       }
-       if (typeof __vue_options__ === "function") {
-         __vue_options__ = __vue_options__.options
-       }
-       __vue_options__.__file = 
"/Users/Hanks/Codes/work/incubator-weex/examples/vue/components/video.vue"
-       __vue_options__.render = __vue_template__.render
-       __vue_options__.staticRenderFns = __vue_template__.staticRenderFns
-       __vue_options__._scopeId = "data-v-c7b2e46c"
-       __vue_options__.style = __vue_options__.style || {}
-       __vue_styles__.forEach(function (module) {
-         for (var name in module) {
-           __vue_options__.style[name] = module[name]
-         }
-       })
-       if (typeof __register_static_styles__ === "function") {
-         __register_static_styles__(__vue_options__._scopeId, __vue_styles__)
-       }
-
-       module.exports = __vue_exports__
-       module.exports.el = 'true'
-       new Vue(module.exports)
-
-
-/***/ }),
-
-/***/ 7:
-/***/ (function(module, exports, __webpack_require__) {
-
-       var __vue_exports__, __vue_options__
-       var __vue_styles__ = []
-
-       /* styles */
-       __vue_styles__.push(__webpack_require__(8)
-       )
-
-       /* script */
-       __vue_exports__ = __webpack_require__(9)
-
-       /* template */
-       var __vue_template__ = __webpack_require__(10)
-       __vue_options__ = __vue_exports__ = __vue_exports__ || {}
-       if (
-         typeof __vue_exports__.default === "object" ||
-         typeof __vue_exports__.default === "function"
-       ) {
-       if (Object.keys(__vue_exports__).some(function (key) { return key !== 
"default" && key !== "__esModule" })) {console.error("named exports are not 
supported in *.vue files.")}
-       __vue_options__ = __vue_exports__ = __vue_exports__.default
-       }
-       if (typeof __vue_options__ === "function") {
-         __vue_options__ = __vue_options__.options
-       }
-       __vue_options__.__file = 
"/Users/Hanks/Codes/work/incubator-weex/examples/vue/include/button.vue"
-       __vue_options__.render = __vue_template__.render
-       __vue_options__.staticRenderFns = __vue_template__.staticRenderFns
-       __vue_options__._scopeId = "data-v-71b34881"
-       __vue_options__.style = __vue_options__.style || {}
-       __vue_styles__.forEach(function (module) {
-         for (var name in module) {
-           __vue_options__.style[name] = module[name]
-         }
-       })
-       if (typeof __register_static_styles__ === "function") {
-         __register_static_styles__(__vue_options__._scopeId, __vue_styles__)
-       }
-
-       module.exports = __vue_exports__
-
-
-/***/ }),
-
-/***/ 8:
-/***/ (function(module, exports) {
-
-       module.exports = {
-         "btn": {
-           "marginBottom": 0,
-           "alignItems": "center",
-           "justifyContent": "center",
-           "borderWidth": 1,
-           "borderStyle": "solid",
-           "borderColor": "#333333"
-         },
-         "btn-default": {
-           "color": "rgb(51,51,51)"
-         },
-         "btn-primary": {
-           "backgroundColor": "rgb(40,96,144)",
-           "borderColor": "rgb(40,96,144)"
-         },
-         "btn-success": {
-           "backgroundColor": "rgb(92,184,92)",
-           "borderColor": "rgb(76,174,76)"
-         },
-         "btn-info": {
-           "backgroundColor": "rgb(91,192,222)",
-           "borderColor": "rgb(70,184,218)"
-         },
-         "btn-warning": {
-           "backgroundColor": "rgb(240,173,78)",
-           "borderColor": "rgb(238,162,54)"
-         },
-         "btn-danger": {
-           "backgroundColor": "rgb(217,83,79)",
-           "borderColor": "rgb(212,63,58)"
-         },
-         "btn-link": {
-           "borderColor": "rgba(0,0,0,0)",
-           "borderRadius": 0
-         },
-         "btn-txt-default": {
-           "color": "rgb(51,51,51)"
-         },
-         "btn-txt-primary": {
-           "color": "rgb(255,255,255)"
-         },
-         "btn-txt-success": {
-           "color": "rgb(255,255,255)"
-         },
-         "btn-txt-info": {
-           "color": "rgb(255,255,255)"
-         },
-         "btn-txt-warning": {
-           "color": "rgb(255,255,255)"
-         },
-         "btn-txt-danger": {
-           "color": "rgb(255,255,255)"
-         },
-         "btn-txt-link": {
-           "color": "rgb(51,122,183)"
-         },
-         "btn-sz-large": {
-           "width": 300,
-           "height": 100,
-           "paddingTop": 25,
-           "paddingBottom": 25,
-           "paddingLeft": 40,
-           "paddingRight": 40,
-           "borderRadius": 15
-         },
-         "btn-sz-middle": {
-           "width": 240,
-           "height": 80,
-           "paddingTop": 15,
-           "paddingBottom": 15,
-           "paddingLeft": 30,
-           "paddingRight": 30,
-           "borderRadius": 10
-         },
-         "btn-sz-small": {
-           "width": 170,
-           "height": 60,
-           "paddingTop": 12,
-           "paddingBottom": 12,
-           "paddingLeft": 25,
-           "paddingRight": 25,
-           "borderRadius": 7
-         },
-         "btn-txt-sz-large": {
-           "fontSize": 45
-         },
-         "btn-txt-sz-middle": {
-           "fontSize": 35
-         },
-         "btn-txt-sz-small": {
-           "fontSize": 30
-         }
-       }
-
-/***/ }),
-
-/***/ 9:
-/***/ (function(module, exports) {
-
-       'use strict';
-
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-
-       module.exports = {
-         props: {
-           type: { default: 'default' },
-           size: { default: 'large' },
-           value: { default: '' }
-         }
-       };
-
-/***/ }),
-
-/***/ 10:
-/***/ (function(module, exports) {
-
-       module.exports={render:function (){var _vm=this;var 
_h=_vm.$createElement;var _c=_vm._self._c||_h;
-         return _c('div', {
-           class: ['btn', 'btn-' + _vm.type, 'btn-sz-' + _vm.size]
-         }, [_c('text', {
-           class: ['btn-txt', 'btn-txt-' + _vm.type, 'btn-txt-sz-' + _vm.size]
-         }, [_vm._v(_vm._s(_vm.value))])])
-       },staticRenderFns: []}
-       module.exports.render._withStripped = true
-
-/***/ }),
-
-/***/ 84:
-/***/ (function(module, exports) {
-
-       module.exports = {
-         "video": {
-           "width": 750,
-           "height": 460,
-           "marginBottom": 80
-         }
-       }
-
-/***/ }),
-
-/***/ 85:
-/***/ (function(module, exports, __webpack_require__) {
-
-       'use strict';
-
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-       //
-
-       var modal = weex.requireModule('modal');
-       module.exports = {
-         data: function data() {
-           return {
-             playStatus: 'play'
-           };
-         },
-         components: {
-           button: __webpack_require__(7)
-         },
-         methods: {
-           pause: function pause() {
-             this.playStatus = 'pause';
-             modal.toast({ 'message': 'click pause' });
-           },
-           play: function play() {
-             this.playStatus = 'play';
-             modal.toast({ 'message': 'click play' });
-           },
-           onpause: function onpause(e) {
-             this.playStatus = e.playStatus;
-             modal.toast({ 'message': 'video pause' });
-           },
-           onstart: function onstart(e) {
-             this.playStatus = e.playStatus;
-             modal.toast({ 'message': 'video start' });
-           },
-           onfinish: function onfinish(e) {
-             this.playStatus = e.playStatus;
-             modal.toast({ 'message': 'video finish' });
-           },
-           onfail: function onfail(e) {
-             this.playStatus = e.playStatus;
-             modal.toast({ 'message': 'video fail' });
-           }
-         }
-       };
-
-/***/ }),
-
-/***/ 86:
-/***/ (function(module, exports) {
-
-       module.exports={render:function (){var _vm=this;var 
_h=_vm.$createElement;var _c=_vm._self._c||_h;
-         return _c('scroller', [_c('video', {
-           staticClass: ["video"],
-           attrs: {
-             "onpause": "onpause",
-             "onstart": "onstart",
-             "onfinish": "onfinish",
-             "onfail": "onfail",
-             "src": "http://g.tbcdn.cn/ali-wireless-h5/res/0.0.6/toy.mp4";,
-             "autoPlay": "true",
-             "playStatus": _vm.playStatus
-           }
-         }), _c('div', {
-           staticStyle: {
-             flexDirection: "row",
-             justifyContent: "center"
-           }
-         }, [_c('button', {
-           attrs: {
-             "value": "Pause"
-           },
-           nativeOn: {
-             "click": function($event) {
-               _vm.pause($event)
-             }
-           }
-         }), _c('button', {
-           staticStyle: {
-             marginLeft: "20px"
-           },
-           attrs: {
-             "value": "Play",
-             "type": "primary"
-           },
-           nativeOn: {
-             "click": function($event) {
-               _vm.play($event)
-             }
-           }
-         })], 1)])
-       },staticRenderFns: []}
-       module.exports.render._withStripped = true
-
-/***/ })
-
-/******/ });
\ No newline at end of file

Reply via email to