├── CHANGELOG.md ├── docs ├── Component │ ├── 弹窗组件(bmmask-bmpop).markdown │ ├── (input、textarea)扩展.markdown │ ├── 加载本地图片资源(扩展-Image).markdown │ └── 富文本(bmrichtext).markdown ├── android-开发 │ ├── 原生配置相关 │ │ ├── 概要.markdown │ │ ├── 应用启动图标和默认返回按钮图标.markdown │ │ ├── App名称、版本号.markdown │ │ └── 项目导入.markdown │ └── 准备.markdown ├── 前端开发 │ ├── widget-列表 │ │ ├── 相机-|-camera.markdown │ │ ├── 位置-|-geo.markdown │ │ ├── 总览.markdown │ │ ├── 支付-|-pay.markdown │ │ ├── 字体-|-font.markdown │ │ ├── 分享-|-share.markdown │ │ ├── 工具-|-tools.markdown │ │ ├── 存储-|-storage.markdown │ │ └── 图片-|-image.markdown │ ├── widget-使用.markdown │ ├── 生命周期.markdown │ └── widget-拓展.markdown ├── 快速入门 │ ├── 常见问题.markdown │ ├── 指令介绍.markdown │ └── 内置打包.markdown ├── iOS-开发 │ ├── App名称、版本号设置.markdown │ └── 图片配置相关.markdown ├── Modules │ ├── 地理位置(bmGeolocation).markdown │ ├── 支付(bmPay).markdown │ ├── 请求发送(bmAxios).markdown │ ├── 图片浏览(bmBrowserImg).markdown │ ├── 分享(bmShare).markdown │ ├── 摄像头(bmCamera).markdown │ ├── 本地存储(bmStorage).markdown │ ├── 认证(bmAuth).markdown │ ├── 弹窗模块(bmModal).markdown │ ├── 导航栏(bmNavigator).markdown │ ├── 字体大小(bmFont).markdown │ ├── 相关工具(bmTool).markdown │ └── 事件中介者(bmEvents).markdown └── 更新日志 │ └── 更新日志.markdown ├── src ├── js │ ├── components │ │ ├── __eros__ │ │ │ ├── weex-ui │ │ │ │ ├── CHANGELOG.md │ │ │ │ ├── packages │ │ │ │ │ ├── wxc-tag │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ └── package.json │ │ │ │ │ ├── wxc-cell │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ ├── package.json │ │ │ │ │ │ ├── icon.base64.js │ │ │ │ │ │ └── utils.js │ │ │ │ │ ├── wxc-checkbox │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ ├── package.json │ │ │ │ │ │ └── checkboxList.vue │ │ │ │ │ ├── wxc-dialog │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ └── package.json │ │ │ │ │ ├── wxc-lightbox │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ └── package.json │ │ │ │ │ ├── wxc-loading │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ ├── package.json │ │ │ │ │ │ ├── part.vue │ │ │ │ │ │ └── util.js │ │ │ │ │ ├── wxc-mask │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ └── package.json │ │ │ │ │ ├── wxc-minibar │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ ├── icon.base64.js │ │ │ │ │ │ └── package.json │ │ │ │ │ ├── wxc-overlay │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ └── package.json │ │ │ │ │ ├── wxc-popup │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ └── package.json │ │ │ │ │ ├── wxc-progress │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ ├── package.json │ │ │ │ │ │ └── index.vue │ │ │ │ │ ├── wxc-radio │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ └── package.json │ │ │ │ │ ├── wxc-result │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ ├── package.json │ │ │ │ │ │ └── type.js │ │ │ │ │ ├── wxc-stepper │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ └── package.json │ │ │ │ │ ├── wxc-tab-page │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ └── package.json │ │ │ │ │ ├── wxc-button │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ ├── package.json │ │ │ │ │ │ └── type.js │ │ │ │ │ ├── wxc-checkbox-list │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ └── index.vue │ │ │ │ │ ├── wxc-countdown │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ └── package.json │ │ │ │ │ ├── wxc-ep-slider │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ └── package.json │ │ │ │ │ ├── wxc-grid-select │ │ │ │ │ │ └── index.js │ │ │ │ │ ├── wxc-indexlist │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ └── package.json │ │ │ │ │ ├── wxc-lottery-rain │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ ├── libs │ │ │ │ │ │ │ ├── config.js │ │ │ │ │ │ │ └── util.js │ │ │ │ │ │ ├── package.json │ │ │ │ │ │ └── index.vue │ │ │ │ │ ├── wxc-noticebar │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ ├── package.json │ │ │ │ │ │ └── utils.js │ │ │ │ │ ├── wxc-page-calendar │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ └── package.json │ │ │ │ │ ├── wxc-part-loading │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ └── index.vue │ │ │ │ │ ├── wxc-rich-text │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ ├── package.json │ │ │ │ │ │ └── wxc-rich-text-link.vue │ │ │ │ │ ├── wxc-searchbar │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ └── package.json │ │ │ │ │ ├── wxc-simple-flow │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ └── package.json │ │ │ │ │ ├── wxc-slide-nav │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ └── package.json │ │ │ │ │ ├── wxc-slider-bar │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ └── package.json │ │ │ │ │ └── wxc-special-rich-text │ │ │ │ │ │ └── index.js │ │ │ │ ├── example │ │ │ │ │ ├── cell │ │ │ │ │ │ └── index.js │ │ │ │ │ ├── tag │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ ├── demo.data.js │ │ │ │ │ │ ├── regular.vue │ │ │ │ │ │ ├── image-advance.vue │ │ │ │ │ │ └── index.vue │ │ │ │ │ ├── button │ │ │ │ │ │ └── index.js │ │ │ │ │ ├── checkbox │ │ │ │ │ │ └── index.js │ │ │ │ │ ├── dialog │ │ │ │ │ │ └── index.js │ │ │ │ │ ├── grid-select │ │ │ │ │ │ └── index.js │ │ │ │ │ ├── lightbox │ │ │ │ │ │ └── index.js │ │ │ │ │ ├── loading │ │ │ │ │ │ └── index.js │ │ │ │ │ ├── lottery-rain │ │ │ │ │ │ └── index.js │ │ │ │ │ ├── mask │ │ │ │ │ │ └── index.js │ │ │ │ │ ├── minibar │ │ │ │ │ │ └── index.js │ │ │ │ │ ├── overlay │ │ │ │ │ │ └── index.js │ │ │ │ │ ├── popup │ │ │ │ │ │ └── index.js │ │ │ │ │ ├── progress │ │ │ │ │ │ └── index.js │ │ │ │ │ ├── radio │ │ │ │ │ │ └── index.js │ │ │ │ │ ├── result │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ ├── util.js │ │ │ │ │ │ ├── type.js │ │ │ │ │ │ └── index.vue │ │ │ │ │ ├── stepper │ │ │ │ │ │ └── index.js │ │ │ │ │ ├── countdown │ │ │ │ │ │ └── index.js │ │ │ │ │ ├── ep-slider │ │ │ │ │ │ └── index.js │ │ │ │ │ ├── indexlist │ │ │ │ │ │ └── index.js │ │ │ │ │ ├── noticebar │ │ │ │ │ │ └── index.js │ │ │ │ │ ├── page-calendar │ │ │ │ │ │ └── index.js │ │ │ │ │ ├── rich-text │ │ │ │ │ │ └── index.js │ │ │ │ │ ├── searchbar │ │ │ │ │ │ └── index.js │ │ │ │ │ ├── simple-flow │ │ │ │ │ │ └── index.js │ │ │ │ │ ├── slide-nav │ │ │ │ │ │ └── index.js │ │ │ │ │ ├── slider-bar │ │ │ │ │ │ └── index.js │ │ │ │ │ ├── tab-page │ │ │ │ │ │ └── index.js │ │ │ │ │ └── _mods │ │ │ │ │ │ ├── category.vue │ │ │ │ │ │ ├── title.vue │ │ │ │ │ │ └── set-nav.js │ │ │ │ └── lerna.json │ │ │ └── bui │ │ │ │ ├── css │ │ │ │ ├── common.css │ │ │ │ ├── video.scss │ │ │ │ ├── video.css │ │ │ │ ├── common.css.map │ │ │ │ ├── image.css │ │ │ │ ├── buiweex.scss │ │ │ │ ├── image.scss │ │ │ │ ├── video.css.map │ │ │ │ ├── image.css.map │ │ │ │ ├── mask.css │ │ │ │ ├── mask.scss │ │ │ │ ├── mask.css.map │ │ │ │ ├── radio.css.map │ │ │ │ ├── dropdown.css.map │ │ │ │ ├── dropdown.css │ │ │ │ ├── badges.css.map │ │ │ │ ├── badges.css │ │ │ │ ├── radio.css │ │ │ │ ├── text.css │ │ │ │ ├── text.css.map │ │ │ │ ├── badges.scss │ │ │ │ ├── slider-bar.css.map │ │ │ │ ├── text.scss │ │ │ │ ├── loading.css.map │ │ │ │ ├── loading.css │ │ │ │ ├── slider-bar.css │ │ │ │ ├── tip.css.map │ │ │ │ ├── dropdown.scss │ │ │ │ ├── slider-bar.scss │ │ │ │ ├── radio.scss │ │ │ │ ├── panel.css.map │ │ │ │ ├── loading.scss │ │ │ │ ├── searchbar.css.map │ │ │ │ ├── tip.css │ │ │ │ ├── tip.scss │ │ │ │ ├── form.css.map │ │ │ │ ├── button.css.map │ │ │ │ ├── actionsheet.css.map │ │ │ │ ├── panel.css │ │ │ │ ├── searchbar.css │ │ │ │ ├── dialog.css.map │ │ │ │ ├── form.css │ │ │ │ ├── searchbar.scss │ │ │ │ ├── tabbar.css.map │ │ │ │ ├── common.scss │ │ │ │ ├── header.css.map │ │ │ │ ├── actionsheet.css │ │ │ │ ├── form.scss │ │ │ │ ├── button.css │ │ │ │ └── dialog.css │ │ │ │ ├── font │ │ │ │ ├── jiantou.ttf │ │ │ │ └── iconfont.ttf │ │ │ │ ├── components │ │ │ │ ├── bui-content.vue │ │ │ │ ├── bui-content-scroll.vue │ │ │ │ ├── bui-mask.vue │ │ │ │ ├── bui-tip.vue │ │ │ │ ├── bui-tabbar-item.vue │ │ │ │ ├── bui-button.vue │ │ │ │ ├── bui-video.vue │ │ │ │ ├── bui-switch.vue │ │ │ │ ├── bui-panel.vue │ │ │ │ ├── bui-tabbar-item-a.vue │ │ │ │ ├── bui-tabbar-scroll-item.vue │ │ │ │ └── bui-load.vue │ │ │ │ └── js │ │ │ │ └── animate.js │ │ └── tabs │ │ │ └── item.vue │ ├── pages │ │ └── eros-demos │ │ │ ├── setting │ │ │ └── index.vue │ │ │ ├── tab1 │ │ │ ├── cell │ │ │ │ ├── index.js │ │ │ │ └── index.html │ │ │ ├── button │ │ │ │ ├── index.js │ │ │ │ └── index.html │ │ │ ├── dialog │ │ │ │ ├── index.js │ │ │ │ └── index.html │ │ │ ├── grid-select │ │ │ │ └── index.js │ │ │ ├── loading │ │ │ │ ├── index.js │ │ │ │ └── index.html │ │ │ ├── lottery-rain │ │ │ │ └── index.js │ │ │ ├── mask │ │ │ │ ├── index.js │ │ │ │ └── index.html │ │ │ ├── minibar │ │ │ │ ├── index.js │ │ │ │ └── index.html │ │ │ ├── overlay │ │ │ │ ├── index.js │ │ │ │ └── index.html │ │ │ ├── popup │ │ │ │ ├── index.js │ │ │ │ └── index.html │ │ │ ├── radio │ │ │ │ └── index.js │ │ │ ├── result │ │ │ │ ├── index.js │ │ │ │ ├── util.js │ │ │ │ ├── type.js │ │ │ │ └── index.vue │ │ │ ├── stepper │ │ │ │ └── index.js │ │ │ ├── tag │ │ │ │ ├── index.js │ │ │ │ ├── demo.data.js │ │ │ │ ├── regular.vue │ │ │ │ ├── image-advance.vue │ │ │ │ ├── index.vue │ │ │ │ └── index.html │ │ │ ├── checkbox │ │ │ │ ├── index.js │ │ │ │ └── index.html │ │ │ ├── countdown │ │ │ │ ├── index.js │ │ │ │ └── index.html │ │ │ ├── ep-slider │ │ │ │ ├── index.js │ │ │ │ └── index.html │ │ │ ├── indexlist │ │ │ │ ├── index.js │ │ │ │ └── index.html │ │ │ ├── lightbox │ │ │ │ ├── index.js │ │ │ │ └── index.html │ │ │ ├── noticebar │ │ │ │ ├── index.js │ │ │ │ └── index.html │ │ │ ├── progress │ │ │ │ ├── index.js │ │ │ │ └── index.html │ │ │ ├── rich-text │ │ │ │ └── index.js │ │ │ ├── searchbar │ │ │ │ └── index.js │ │ │ ├── simple-flow │ │ │ │ └── index.js │ │ │ ├── slide-nav │ │ │ │ └── index.js │ │ │ ├── slider-bar │ │ │ │ └── index.js │ │ │ ├── page-calendar │ │ │ │ └── index.js │ │ │ ├── tab-page │ │ │ │ └── index.js │ │ │ └── _mods │ │ │ │ ├── category.vue │ │ │ │ ├── title.vue │ │ │ │ └── set-nav.js │ │ │ ├── tab4 │ │ │ └── demo │ │ │ │ ├── components │ │ │ │ └── tabitem3.vue │ │ │ │ └── index.vue │ │ │ ├── tab2 │ │ │ ├── tip.vue │ │ │ ├── image.vue │ │ │ └── header.vue │ │ │ └── tab3 │ │ │ └── router.vue │ ├── css │ │ ├── module │ │ │ ├── content-null.scss │ │ │ └── common-order.scss │ │ ├── fragment │ │ │ └── no-search.scss │ │ └── core │ │ │ └── ellipsis.scss │ ├── config │ │ ├── index.js │ │ └── push.js │ ├── widget │ │ ├── index.js │ │ ├── share.js │ │ ├── axios.js │ │ ├── pay.js │ │ ├── nav.js │ │ ├── geo.js │ │ └── events.js │ └── mediator │ │ └── index.vue ├── assets │ └── test.jpeg ├── iconfont │ ├── icon.ttf │ ├── iconfont.ttf │ ├── font_1469606063_76593.ttf │ ├── font_zn5b3jswpofuhaor.ttf │ └── font_1469606522_9417143.woff └── mock │ └── test │ └── info.js ├── package.json └── config └── eros.native.js /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/Component/弹窗组件(bmmask-bmpop).markdown: -------------------------------------------------------------------------------- 1 | 待完善 -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Change Log 2 | 3 | ## 0.1.0 4 | 5 | -------------------------------------------------------------------------------- /src/assets/test.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wennjie/weex-book/HEAD/src/assets/test.jpeg -------------------------------------------------------------------------------- /src/iconfont/icon.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wennjie/weex-book/HEAD/src/iconfont/icon.ttf -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/common.css: -------------------------------------------------------------------------------- 1 | 2 | 3 | /*# sourceMappingURL=common.css.map */ 4 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-tag/index.js: -------------------------------------------------------------------------------- 1 | export { default } from './index.vue'; -------------------------------------------------------------------------------- /src/iconfont/iconfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wennjie/weex-book/HEAD/src/iconfont/iconfont.ttf -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-cell/index.js: -------------------------------------------------------------------------------- 1 | export { default } from './index.vue'; -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-checkbox/index.js: -------------------------------------------------------------------------------- 1 | export { default } from './index.vue'; -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-dialog/index.js: -------------------------------------------------------------------------------- 1 | export { default } from './index.vue'; -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-lightbox/index.js: -------------------------------------------------------------------------------- 1 | export { default } from './index.vue'; -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-loading/index.js: -------------------------------------------------------------------------------- 1 | export { default } from './index.vue'; -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-mask/index.js: -------------------------------------------------------------------------------- 1 | export { default } from './index.vue'; -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-minibar/index.js: -------------------------------------------------------------------------------- 1 | export { default } from './index.vue'; -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-overlay/index.js: -------------------------------------------------------------------------------- 1 | export { default } from './index.vue'; -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-popup/index.js: -------------------------------------------------------------------------------- 1 | export { default } from './index.vue'; -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-progress/index.js: -------------------------------------------------------------------------------- 1 | export { default } from './index.vue'; -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-radio/index.js: -------------------------------------------------------------------------------- 1 | export { default } from './index.vue'; -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-result/index.js: -------------------------------------------------------------------------------- 1 | export { default } from './index.vue'; -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-stepper/index.js: -------------------------------------------------------------------------------- 1 | export { default } from './index.vue'; -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-tab-page/index.js: -------------------------------------------------------------------------------- 1 | export { default } from './index.vue'; -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-button/index.js: -------------------------------------------------------------------------------- 1 | export { default } 2 | from './index.vue'; -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-checkbox-list/index.js: -------------------------------------------------------------------------------- 1 | export { default } from './index.vue'; -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-countdown/index.js: -------------------------------------------------------------------------------- 1 | export { default } from './index.vue'; -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-ep-slider/index.js: -------------------------------------------------------------------------------- 1 | export { default } from './index.vue'; -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-grid-select/index.js: -------------------------------------------------------------------------------- 1 | export { default } from './index.vue'; -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-indexlist/index.js: -------------------------------------------------------------------------------- 1 | export { default } from './index.vue'; -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-lottery-rain/index.js: -------------------------------------------------------------------------------- 1 | export { default } from './index.vue'; -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-noticebar/index.js: -------------------------------------------------------------------------------- 1 | export { default } from './index.vue'; -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-page-calendar/index.js: -------------------------------------------------------------------------------- 1 | export { default } from './index.vue'; -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-part-loading/index.js: -------------------------------------------------------------------------------- 1 | export { default } from './index.vue'; -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-rich-text/index.js: -------------------------------------------------------------------------------- 1 | export { default } from './index.vue'; -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-searchbar/index.js: -------------------------------------------------------------------------------- 1 | export { default } from './index.vue'; -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-simple-flow/index.js: -------------------------------------------------------------------------------- 1 | export { default } from './index.vue'; -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-slide-nav/index.js: -------------------------------------------------------------------------------- 1 | export { default } from './index.vue'; -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-slider-bar/index.js: -------------------------------------------------------------------------------- 1 | export { default } from './index.vue'; -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-special-rich-text/index.js: -------------------------------------------------------------------------------- 1 | export { default } from './index.vue'; -------------------------------------------------------------------------------- /docs/android-开发/原生配置相关/概要.markdown: -------------------------------------------------------------------------------- 1 | ### 内容提要 2 | 3 | 本章主要介绍一些关于原生配置,方便前端开发者自定义。为了方便配置,目前只提供在IDE AndroidStudio下的配置方法。 4 | 5 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/video.scss: -------------------------------------------------------------------------------- 1 | @import "common"; 2 | 3 | .bui-video{ 4 | flex: 1; 5 | height: 350px; 6 | } -------------------------------------------------------------------------------- /src/iconfont/font_1469606063_76593.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wennjie/weex-book/HEAD/src/iconfont/font_1469606063_76593.ttf -------------------------------------------------------------------------------- /src/iconfont/font_zn5b3jswpofuhaor.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wennjie/weex-book/HEAD/src/iconfont/font_zn5b3jswpofuhaor.ttf -------------------------------------------------------------------------------- /docs/android-开发/原生配置相关/应用启动图标和默认返回按钮图标.markdown: -------------------------------------------------------------------------------- 1 | ### 内容提要 2 | 3 | 本章主要介绍一些关于原生配置,方便前端开发者自定义。为了方便配置,目前只提供在IDE AndroidStudio下的配置方法。 4 | 5 | -------------------------------------------------------------------------------- /src/iconfont/font_1469606522_9417143.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wennjie/weex-book/HEAD/src/iconfont/font_1469606522_9417143.woff -------------------------------------------------------------------------------- /src/js/pages/eros-demos/setting/index.vue: -------------------------------------------------------------------------------- 1 | 3 | 4 | 6 | 7 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/cell/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | entry.el = '#root' 3 | export default new Vue(entry) 4 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/button/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/dialog/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/grid-select/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | entry.el = '#root' 3 | export default new Vue(entry) 4 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/loading/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/lottery-rain/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | entry.el = '#root' 3 | export default new Vue(entry) 4 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/mask/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/minibar/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/overlay/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/popup/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/radio/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/result/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/stepper/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/tag/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/video.css: -------------------------------------------------------------------------------- 1 | .bui-video { 2 | flex: 1; 3 | height: 350px; } 4 | 5 | /*# sourceMappingURL=video.css.map */ 6 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/font/jiantou.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wennjie/weex-book/HEAD/src/js/components/__eros__/bui/font/jiantou.ttf -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/checkbox/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/countdown/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/ep-slider/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/indexlist/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/lightbox/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/noticebar/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/progress/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/rich-text/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/searchbar/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/simple-flow/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/slide-nav/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/slider-bar/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/font/iconfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wennjie/weex-book/HEAD/src/js/components/__eros__/bui/font/iconfont.ttf -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/cell/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | entry.el = '#root' 3 | export default new Vue(entry) 4 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/tag/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/page-calendar/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/common.css.map: -------------------------------------------------------------------------------- 1 | { 2 | "version": 3, 3 | "mappings": "", 4 | "sources": [], 5 | "names": [], 6 | "file": "common.css" 7 | } -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/image.css: -------------------------------------------------------------------------------- 1 | .icon-list-right { 2 | width: 48px; 3 | height: 48px; } 4 | 5 | /*# sourceMappingURL=image.css.map */ 6 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/button/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/checkbox/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/dialog/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/grid-select/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | entry.el = '#root' 3 | export default new Vue(entry) 4 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/lightbox/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/loading/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/lottery-rain/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | entry.el = '#root' 3 | export default new Vue(entry) 4 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/mask/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/minibar/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/overlay/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/popup/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/progress/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/radio/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/result/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/stepper/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/lerna.json: -------------------------------------------------------------------------------- 1 | { 2 | "lerna": "2.0.0", 3 | "packages": [ 4 | "packages/*" 5 | ], 6 | "version": "0.0.0" 7 | } 8 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/countdown/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/ep-slider/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/indexlist/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/noticebar/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/page-calendar/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/rich-text/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/searchbar/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/simple-flow/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/slide-nav/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/slider-bar/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/buiweex.scss: -------------------------------------------------------------------------------- 1 | @charset "UTF-8"; 2 | 3 | @import "layout"; 4 | @import "badges"; 5 | @import "form"; 6 | @import "list"; 7 | @import "text"; -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/image.scss: -------------------------------------------------------------------------------- 1 | @charset "UTF-8"; 2 | 3 | @import "common"; 4 | 5 | .icon-list-right{ 6 | width: $nb48 ; 7 | height: $nb48 ; 8 | } 9 | 10 | -------------------------------------------------------------------------------- /src/mock/test/info.js: -------------------------------------------------------------------------------- 1 | module.exports = [{ 2 | "delay": 500, 3 | "response": { 4 | "resCode": 0, 5 | "msg": null, 6 | "data": "mock请求成功!" 7 | } 8 | }] -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/tab-page/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | // import entry from './full-page-demo/index.vue' 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/tab-page/index.js: -------------------------------------------------------------------------------- 1 | import entry from './index.vue' 2 | // import entry from './full-page-demo/index.vue' 3 | entry.el = '#root' 4 | export default new Vue(entry) 5 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/video.css.map: -------------------------------------------------------------------------------- 1 | { 2 | "version": 3, 3 | "mappings": "AAEA,UAAU;EACR,IAAI,EAAE,CAAC;EACP,MAAM,EAAE,KAAK", 4 | "sources": ["video.scss"], 5 | "names": [], 6 | "file": "video.css" 7 | } -------------------------------------------------------------------------------- /src/js/css/module/content-null.scss: -------------------------------------------------------------------------------- 1 | /*暂无订单*/ 2 | .wrap-null { 3 | padding-top: 254; 4 | align-items: center; 5 | } 6 | .null-txt { 7 | margin-top: 40; 8 | font-size: $font-32; 9 | color: $base-disabled; 10 | } -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/image.css.map: -------------------------------------------------------------------------------- 1 | { 2 | "version": 3, 3 | "mappings": "AAIA,gBAAgB;EACd,KAAK,ECWA,IAAI;EDVT,MAAM,ECUD,IAAI", 4 | "sources": ["image.scss","common.scss"], 5 | "names": [], 6 | "file": "image.css" 7 | } -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/mask.css: -------------------------------------------------------------------------------- 1 | .bui-mask { 2 | position: fixed; 3 | left: 0px; 4 | right: 0px; 5 | top: 0px; 6 | bottom: 0px; 7 | background-color: #000000; 8 | opacity: 0.3; } 9 | 10 | /*# sourceMappingURL=mask.css.map */ 11 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/mask.scss: -------------------------------------------------------------------------------- 1 | @charset "UTF-8"; 2 | @import "common"; 3 | 4 | .bui-mask{ 5 | position: fixed; 6 | left: 0px; 7 | right: 0px; 8 | top: 0px; 9 | bottom: 0px; 10 | background-color: $color_black; 11 | opacity: 0.3; 12 | } -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab4/demo/components/tabitem3.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 12 | 13 | 16 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-lottery-rain/libs/config.js: -------------------------------------------------------------------------------- 1 | export const DEFAULT = { 2 | intervalTime: 400, 3 | hideAniTime: 300, 4 | showAniTime: 300, 5 | showTime: 400, 6 | randomTime: 300, 7 | width: 241, 8 | height: 206 9 | }; 10 | -------------------------------------------------------------------------------- /docs/前端开发/widget-列表/相机-|-camera.markdown: -------------------------------------------------------------------------------- 1 | ### camera(摄像头相关) 2 | 3 | #### scan** ** 4 | 5 | > 掉起 app 扫一扫。 6 | 7 | 示例: 8 | 9 | ```js 10 | this.$camera.scan((resData) => { 11 | console.log(resData.data) 12 | }) 13 | ``` 14 | 15 | 扫一扫的结果会通过 resData.data 返回。 16 | 17 | -------------------------------------------------------------------------------- /src/js/config/index.js: -------------------------------------------------------------------------------- 1 | import './push' 2 | import pages from './pages' 3 | import { apis, responseHandler } from './apis' 4 | 5 | 6 | export const config = { 7 | pages, 8 | apis, 9 | responseHandler 10 | } 11 | 12 | Vue.prototype.eros = config 13 | 14 | import 'Widget' -------------------------------------------------------------------------------- /docs/前端开发/widget-列表/位置-|-geo.markdown: -------------------------------------------------------------------------------- 1 | ### geo(当前位置信息) 2 | 3 | #### get** ** 4 | 5 | > 获取当前位置坐标。 6 | 7 | 示例: 8 | 9 | ```js 10 | this.$geo.get((resData) => { 11 | this.lat = resData.data.locationLat 12 | this.lng = resData.data.locationLng 13 | }) 14 | ``` 15 | 16 | 17 | 18 | -------------------------------------------------------------------------------- /docs/快速入门/常见问题.markdown: -------------------------------------------------------------------------------- 1 | #### bm eros dev 服务不成功 2 | **mac/linux:** 3 | 正常来说 mac/linux 下不会有任何报错,如果提示权限不足请 sudo 执行。 4 | **windows** 5 | 如果报权限不足,如果 dev.json 未做修改,默认是80端口,请找出80端口占用程序并关闭他。 6 | 7 | 如果报了以下错误: 8 | > vue packages version mismatch 9 | 10 | 运行 weex 的指令 **weex-repair** 11 | **原因是你的全局 Vue 环境被污染了。** 12 | 13 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/mask.css.map: -------------------------------------------------------------------------------- 1 | { 2 | "version": 3, 3 | "mappings": "AAGA,SAAS;EACP,QAAQ,EAAE,KAAK;EACf,IAAI,EAAE,GAAG;EACT,KAAK,EAAE,GAAG;EACV,GAAG,EAAE,GAAG;EACR,MAAM,EAAE,GAAG;EACX,gBAAgB,ECgCJ,OAAO;ED/BnB,OAAO,EAAE,GAAG", 4 | "sources": ["mask.scss","common.scss"], 5 | "names": [], 6 | "file": "mask.css" 7 | } -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/result/util.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Created by Tw93 on 2017/7/17. 3 | 4 | */ 5 | 6 | export function getBundleParam (param) { 7 | const { bundleUrl } = weex.config; 8 | let value = bundleUrl.match(new RegExp('[\?\&]' + param + '=([^\&\#]*)([\&\#]?)', 'i')); 9 | return value ? decodeURIComponent(value[1]) : value; 10 | } 11 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/result/util.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Created by Tw93 on 2017/7/17. 3 | 4 | */ 5 | 6 | export function getBundleParam (param) { 7 | const { bundleUrl } = weex.config; 8 | let value = bundleUrl.match(new RegExp('[\?\&]' + param + '=([^\&\#]*)([\&\#]?)', 'i')); 9 | return value ? decodeURIComponent(value[1]) : value; 10 | } 11 | -------------------------------------------------------------------------------- /src/js/css/fragment/no-search.scss: -------------------------------------------------------------------------------- 1 | // @Author: songqi 2 | // @Date: 2017-03-16 3 | // @Last modified by: songqi 4 | // @Last modified time: 2017-03-16 5 | 6 | 7 | 8 | @import "../core/base"; 9 | 10 | /*暂无搜索记录*/ 11 | .no-search { 12 | text-align: center; 13 | padding-top: 100; 14 | font-size: $font-30; 15 | color: $blue-ink; 16 | font-weight: bold; 17 | } 18 | -------------------------------------------------------------------------------- /docs/android-开发/原生配置相关/App名称、版本号.markdown: -------------------------------------------------------------------------------- 1 | ### 应用名称设置 2 | 3 | 1.打开**app/src/main/res/values/strings.xml,**找到**app\_name**节点。![](https://img.benmu-health.com/gitbook/1505443821697.jpg)2.修改**app\_name**节点的值为你的应用名字即可。 4 | 5 | ### 应用版本设置 6 | 7 | 1.打开**app/build.gradle**,找到**versionName**。![](https://img.benmu-health.com/gitbook/1505457425584.jpg)2.将**versionName**所对应的版本号修改成你的版本 重新运行即可 8 | 9 | -------------------------------------------------------------------------------- /docs/iOS-开发/App名称、版本号设置.markdown: -------------------------------------------------------------------------------- 1 | # App名称、版本号设置 2 | 3 | 1. 打开 iOS 工程,选择工程目录 4 | 2. 点击WeexEros 工程文件 5 | 3. 在 TARGERS 中选择 WeeEros 6 | 4. 选择 Genneral 设置项 7 | 8 | 如下图![](https://img.benmu-health.com/gitbook/appname.png) 9 | 10 | #### 说明 11 | 12 | Display Name:App 安装到手机上显示的名称; 13 | 14 | Bundle Identifier:App 唯一标示(开发者后台配置的AppID) 15 | 16 | Version:版本号 17 | 18 | Build:Build 号 19 | 20 | -------------------------------------------------------------------------------- /src/js/config/push.js: -------------------------------------------------------------------------------- 1 | /* 2 | * @Author: mikey.zhaopeng 3 | * @Date: 2017-09-26 10:55:08 4 | * @Last Modified by: Zero 5 | * @Last Modified time: 2017-10-11 12:23:07 6 | */ 7 | 8 | /** 9 | * 个推回调 10 | */ 11 | var globalEvent = weex.requireModule('globalEvent') 12 | 13 | 14 | /** 15 | * 消息推送 16 | * options 客户端个推推送的所有消息 17 | */ 18 | globalEvent.addEventListener("pushMessage", function(options) { 19 | 20 | }) -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/components/bui-content.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | -------------------------------------------------------------------------------- /docs/前端开发/widget-列表/总览.markdown: -------------------------------------------------------------------------------- 1 | #### widget包含什么 2 | 3 | * **axios**:发起请求。 4 | * **image**: 上传图片和浏览图片。 5 | * **camera**:照相机相关。 6 | * **notice**:通知相关,toast,modal,alert等等 7 | * **storage**:存储相关:存到客户端本地。 8 | * **router**:路由相关。 9 | * **geo**:获取当前位置。 10 | * **nav**:原生导航条设置相关。 11 | * **events**:事件相关,页面和页面通信,js 和 native 通信。 12 | * **pay**:支付相关。 13 | * **tools**:工具相关,如收起键盘等。 14 | * **share**:分享相关。 15 | * **font**:字体设置相关。 16 | 17 | 18 | 19 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-countdown/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "wxc-countdown", 3 | "version": "0.1.0", 4 | "description": "倒计时", 5 | "main": "index.js", 6 | "type": "weex", 7 | "repository": "https://github.com/alibaba/weex-ui/tree/master/packages/wxc-countdown", 8 | "keywords": [ 9 | "wxc-countdown" 10 | ], 11 | "author": "提隐", 12 | "license": "MIT", 13 | "dependencies": {} 14 | } 15 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/components/bui-content-scroll.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-slide-nav/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "wxc-slide-nav", 3 | "version": "0.1.0", 4 | "description": "导航滑动组件", 5 | "main": "index.js", 6 | "type": "weex", 7 | "repository": "https://github.com/alibaba/weex-ui/tree/master/packages/wxc-slide-nav", 8 | "keywords": [ 9 | "wxc-slide-nav" 10 | ], 11 | "author": "虎牙", 12 | "license": "MIT", 13 | "dependencies": {} 14 | } 15 | -------------------------------------------------------------------------------- /src/js/css/core/ellipsis.scss: -------------------------------------------------------------------------------- 1 | /*公用文字截断*/ 2 | .limit-one{ 3 | lines: 1; 4 | text-overflow: ellipsis; 5 | flex: 1; 6 | } 7 | .limit-two{ 8 | lines: 2; 9 | text-overflow: ellipsis; 10 | } 11 | .limit-three{ 12 | lines: 3; 13 | text-overflow: ellipsis; 14 | } 15 | .limit-four { 16 | lines: 4; 17 | text-overflow: ellipsis; 18 | } 19 | .unlimit{ 20 | lines: 0; 21 | text-overflow: ellipsis; 22 | } 23 | -------------------------------------------------------------------------------- /docs/前端开发/widget-列表/支付-|-pay.markdown: -------------------------------------------------------------------------------- 1 | ### pay(支付相关) 2 | 3 | 目前仅支持微信支付。 4 | 5 | #### wechat** ** 6 | 7 | > 调起微信支付。 8 | 9 | 示例: 10 | 11 | ```js 12 | this.$pay.wechat({ 13 | // 微信支付所需必要参数,参考官方文档 14 | sign:'', 15 | timestamp:'', 16 | noncestr:'', 17 | partnerid:'', 18 | prepayid:'', 19 | packageValue:'' 20 | }).then(resData => { 21 | // 成功的回调 22 | }, error => { 23 | // 失败的回调 24 | }) 25 | ``` 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/radio.css.map: -------------------------------------------------------------------------------- 1 | { 2 | "version": 3, 3 | "mappings": "AAEA,SAAS;EACP,WAAW,EAAE,MAAM;EACnB,WAAW,ECCN,IAAI;EDAT,cAAc,ECAT,IAAI;EDCT,YAAY,ECHR,GAAG;EDIP,YAAY,ECOP,IAAI;EDNT,aAAa,ECFR,IAAI;;ADIX,MAAM;EACJ,SAAS,ECDJ,IAAI;;ADKX,SAAS;EACP,OAAO,EAAE,GAAG;;AAWd,YAAY;EACV,WAAW,EAAE,UAAU;;AAGzB,YAAY;EACV,cAAc,EAAE,MAAM;;AAGxB,SAAS;EACP,cAAc,EAAE,GAAG", 4 | "sources": ["radio.scss","common.scss"], 5 | "names": [], 6 | "file": "radio.css" 7 | } -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-minibar/icon.base64.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Created by Tw93 on 2016/10/29. 3 | */ 4 | module.exports = { 5 | iconArrow: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABUAAAAkCAMAAABR74GsAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAhUExURUxpcTw8PD09PQAAADw8PDw8PDMzMz09PTw8PDw8PD09PWFW+gwAAAAKdFJOUwCAoAJ4/gWX8prBgCgwAAAAMElEQVQoz2NgQAcsHJwYYgyMXFysbFgEudixCTIxjwqSIYhDdFSYKsLsRKZqSA4AAKEHBO9H54HuAAAAAElFTkSuQmCC", 6 | } 7 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/dropdown.css.map: -------------------------------------------------------------------------------- 1 | { 2 | "version": 3, 3 | "mappings": "AAUA,iBAAiB;EACf,QAAQ,EAAE,KAAK;EACf,OAAO,EAAE,CAAC;EACV,SAAS,EAAE,eAAe;;AAI5B,qBAAqB;EACnB,QAAQ,EAAE,QAAQ;EAClB,UAAU,ECLL,IAAI;EDMT,aAAa,EChBR,IAAI;EDiBT,cAAc,EAAE,MAAM;EACtB,QAAQ,EAAE,MAAM;EAEhB,cAAc,EAAE,MAAM;EACtB,IAAI,EAAE,CAAC;;AAGT,qBAAqB;EACnB,QAAQ,EAAE,QAAQ;EAClB,GAAG,EAAE,GAAG", 4 | "sources": ["dropdown.scss","common.scss"], 5 | "names": [], 6 | "file": "dropdown.css" 7 | } -------------------------------------------------------------------------------- /docs/Component/(input、textarea)扩展.markdown: -------------------------------------------------------------------------------- 1 | # <input>、<textarea> 扩展 2 | 3 | ### 扩展样式 4 | 5 | 修改光标颜色:tint-color 6 | 7 | 示例 8 | 9 | ```js 10 | 16 | ``` 17 | 18 | ![](https://img.benmu-health.com/gitbook/showInput.gif) 19 | 20 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/dropdown.css: -------------------------------------------------------------------------------- 1 | .bui-dropdown-box { 2 | position: fixed; 3 | opacity: 0; 4 | transform: scale(0.9, 0.9); } 5 | 6 | .bui-dropdown-content { 7 | position: relative; 8 | margin-top: 40px; 9 | border-radius: 10px; 10 | flex-direction: column; 11 | overflow: hidden; 12 | flex-direction: column; 13 | flex: 1; } 14 | 15 | .bui-dropdown-jiantou { 16 | position: absolute; 17 | top: 0px; } 18 | 19 | /*# sourceMappingURL=dropdown.css.map */ 20 | -------------------------------------------------------------------------------- /docs/Modules/地理位置(bmGeolocation).markdown: -------------------------------------------------------------------------------- 1 | ### bmGeolocation 2 | 3 | > 获取定位(坐标系:gcj02) 4 | 5 | **引用方式** 6 | 7 | ```js 8 | var geolocation = weex.requireModule('bmGeolocation') 9 | ``` 10 | 11 | **API** 12 | 13 | * 接口:`getGeolocation(callback)` 14 | 15 | ```js 16 | geolocation.getGeolocation(function(resDate){ 17 | // resDate 18 | // { 19 | // locationLat: '', 纬度 20 | // locationLng: '' 经度 21 | // } 22 | }) 23 | ``` 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/badges.css.map: -------------------------------------------------------------------------------- 1 | { 2 | "version": 3, 3 | "mappings": "AAKA,OAAO;EACL,gBAAgB,EC8BH,OAAO;ED7BpB,KAAK,EAAE,IAAI;EACX,MAAM,EAAE,IAAI;EACZ,aAAa,EAAE,IAAI;EACnB,UAAU,EAAE,MAAM;EAClB,KAAK,EAAE,OAAO;EACd,WAAW,EAAC,GAAG;EACf,SAAS,EAAE,IAAI;;AAGjB,aAAa;EACX,gBAAgB,ECmBH,OAAO;EDlBpB,KAAK,EAAE,IAAI;EACX,MAAM,EAAE,IAAI;EACZ,aAAa,EAAE,IAAI;EACnB,UAAU,EAAE,MAAM;EAClB,KAAK,EAAE,OAAO;EACd,WAAW,EAAC,GAAG", 4 | "sources": ["badges.scss","common.scss"], 5 | "names": [], 6 | "file": "badges.css" 7 | } -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/badges.css: -------------------------------------------------------------------------------- 1 | .badges { 2 | background-color: #ff4e24; 3 | width: 50px; 4 | height: 40px; 5 | border-radius: 30px; 6 | text-align: center; 7 | color: #ffffff; 8 | padding-top: 7px; 9 | font-size: 24px; } 10 | 11 | .large-badges { 12 | background-color: #ff4e24; 13 | width: 70px; 14 | height: 40px; 15 | border-radius: 30px; 16 | text-align: center; 17 | color: #ffffff; 18 | padding-top: 7px; } 19 | 20 | /*# sourceMappingURL=badges.css.map */ 21 | -------------------------------------------------------------------------------- /docs/Component/加载本地图片资源(扩展-Image).markdown: -------------------------------------------------------------------------------- 1 | # 加载本地图片资源(扩展 Image) 2 | 3 | 目前 Weex 的 `` 标签不支持加载本地图片资源,但是在实际开发中加载本地图片资源还是必须的功能,通过扩展 `` 组件使其支持此特性; 4 | 5 | **使用方法:** 6 | 首先需要将图片资源放到 assets 目录下,填写 scr 时请以 bmlocal://assets/ 开头后面跟上图片的具体路径 7 | 8 | **示例:** 9 | 10 | ```js 11 | 14 | ``` 15 | 16 | **效果** 17 | 18 | ![](https://img.benmu-health.com/gitbook/iimport.png) 19 | 20 | -------------------------------------------------------------------------------- /src/js/widget/index.js: -------------------------------------------------------------------------------- 1 | // 配置方法 2 | import './font.js' 3 | // 弹窗 4 | import './notice.js' 5 | // 路由 6 | import './router.js' 7 | // 发送请求 8 | import Axios from './axios.js' 9 | // 获取地理位置 10 | import './geo.js' 11 | // 获取相机信息 12 | import './camera.js' 13 | // 设置导航 14 | import './nav.js' 15 | // 支付相关 16 | import './pay.js' 17 | // 存储相关 18 | import './storage.js' 19 | // 全局事件 20 | import './events.js' 21 | // 分享 22 | import './share.js' 23 | // 工具方法 24 | import './tools.js' 25 | 26 | Vue.use(Axios) -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/radio.css: -------------------------------------------------------------------------------- 1 | .radioBox { 2 | align-items: center; 3 | padding-top: 15px; 4 | padding-bottom: 15px; 5 | padding-left: 5px; 6 | margin-right: 40px; 7 | padding-right: 20px; } 8 | 9 | .label { 10 | font-size: 30px; } 11 | 12 | .disabled { 13 | opacity: 0.5; } 14 | 15 | .switchstyle { 16 | align-items: flex-start; } 17 | 18 | .flex-column { 19 | flex-direction: column; } 20 | 21 | .flex-row { 22 | flex-direction: row; } 23 | 24 | /*# sourceMappingURL=radio.css.map */ 25 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/text.css: -------------------------------------------------------------------------------- 1 | .h1 { 2 | font-size: 80px; 3 | line-height: 120px; 4 | color: #464c5b; } 5 | 6 | .h2 { 7 | font-size: 60px; 8 | line-height: 100px; 9 | color: #464c5b; } 10 | 11 | .h3 { 12 | font-size: 45px; 13 | line-height: 60px; 14 | color: #464c5b; } 15 | 16 | .h4 { 17 | font-size: 32px; 18 | line-height: 45px; 19 | color: #464c5b; } 20 | 21 | .h5 { 22 | font-size: 28px; 23 | line-height: 40px; 24 | color: #464c5b; } 25 | 26 | /*# sourceMappingURL=text.css.map */ 27 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/text.css.map: -------------------------------------------------------------------------------- 1 | { 2 | "version": 3, 3 | "mappings": "AAEA,GAAG;EACD,SAAS,ECiBJ,IAAI;EDhBT,WAAW,ECkBL,KAAK;EDjBX,KAAK,ECqCO,OAAO;;ADnCrB,GAAG;EACD,SAAS,ECWJ,IAAI;EDVT,WAAW,ECYL,KAAK;EDXX,KAAK,ECgCO,OAAO;;AD9BrB,GAAG;EACD,SAAS,ECEJ,IAAI;EDDT,WAAW,ECKN,IAAI;EDJT,KAAK,EC2BO,OAAO;;ADzBrB,GAAG;EACD,SAAS,ECPJ,IAAI;EDQT,WAAW,ECJN,IAAI;EDKT,KAAK,ECsBO,OAAO;;ADpBrB,GAAG;EACD,SAAS,ECdJ,IAAI;EDeT,WAAW,ECVN,IAAI;EDWT,KAAK,ECiBO,OAAO", 4 | "sources": ["text.scss","common.scss"], 5 | "names": [], 6 | "file": "text.css" 7 | } -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/badges.scss: -------------------------------------------------------------------------------- 1 | @charset "UTF-8"; 2 | 3 | @import "common"; 4 | 5 | //角标 6 | .badges{ 7 | background-color: $color_danger; 8 | width: 50px; 9 | height: 40px; 10 | border-radius: 30px; 11 | text-align: center; 12 | color: #ffffff; 13 | padding-top:7px; 14 | font-size: 24px; 15 | } 16 | 17 | .large-badges{ 18 | background-color: $color_danger; 19 | width: 70px; 20 | height: 40px; 21 | border-radius: 30px; 22 | text-align: center; 23 | color: #ffffff; 24 | padding-top:7px; 25 | } -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/slider-bar.css.map: -------------------------------------------------------------------------------- 1 | { 2 | "version": 3, 3 | "mappings": "AAUA,mBAAmB;EACjB,QAAQ,EAAE,KAAK;EACf,KAAK,EAAE,KAAK;EACZ,GAAG,EAAE,GAAG;EACR,MAAM,EAAE,GAAG;EACX,gBAAgB,ECkCJ,OAAO;EDjCnB,OAAO,ECNF,IAAI;EDOT,cAAc,EAAE,MAAM;;AAExB,wBAAwB;EACtB,IAAI,EAAE,MAAM;;AAEd,yBAAyB;EACvB,KAAK,EAAE,MAAM;;AAGf,iBAAiB;EACf,UAAU,ECVL,IAAI;EDWT,UAAU,EAAE,MAAM;;AAGpB,mBAAmB;EACjB,UAAU,ECfL,IAAI;EDgBT,cAAc,EAAE,MAAM;EACtB,IAAI,EAAE,CAAC", 4 | "sources": ["slider-bar.scss","common.scss"], 5 | "names": [], 6 | "file": "slider-bar.css" 7 | } -------------------------------------------------------------------------------- /docs/Modules/支付(bmPay).markdown: -------------------------------------------------------------------------------- 1 | ### bmPay 2 | 3 | > 目前只集成了微信支付,记得在 config.json 中配置好 appId 及 appSecret 4 | 5 | **引用方式** 6 | 7 | ```js 8 | var pay = weex.requireModule('bmPay') 9 | ``` 10 | 11 | **API** 12 | 13 | * 调用支付:`payByWechat(info,callback)` 14 | 15 | ```js 16 | // 示例 17 | pay.payByWechat({ 18 | // 微信支付所需必要参数,参考官方文档 19 | sign:'', 20 | timestamp:'', 21 | noncestr:'', 22 | partnerid:'', 23 | prepayid:'', 24 | packageValue:'' 25 | }, function(resData){ 26 | // 支付结果 27 | }) 28 | ``` 29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/text.scss: -------------------------------------------------------------------------------- 1 | @import "common"; 2 | 3 | .h1{ 4 | font-size: $nb80; 5 | line-height: $nb120; 6 | color: $color_title; 7 | } 8 | .h2{ 9 | font-size: $nb60; 10 | line-height: $nb100; 11 | color: $color_title; 12 | } 13 | .h3{ 14 | font-size: $nb45; 15 | line-height: $nb60; 16 | color: $color_title; 17 | } 18 | .h4{ 19 | font-size: $nb32; 20 | line-height: $nb45; 21 | color: $color_title; 22 | } 23 | .h5{ 24 | font-size: $nb28; 25 | line-height: $nb40; 26 | color: $color_title; 27 | } -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/components/bui-mask.vue: -------------------------------------------------------------------------------- 1 | 4 | 5 | 20 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/components/bui-tip.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/loading.css.map: -------------------------------------------------------------------------------- 1 | { 2 | "version": 3, 3 | "mappings": "AAiBA,WAAY;EACV,QAAQ,EAAE,KAAK;EACf,IAAI,EAAE,KAAK;EACX,KAAK,EAAE,KAAK;EACZ,MAAM,EAAE,KAAK;EACb,gBAAgB,ECmBJ,OAAO;EDlBnB,OAAO,EAAE,GAAG;EACZ,GAAG,EAAE,KAAK;EACV,YAAY,ECnBP,IAAI;EDoBT,aAAa,ECpBR,IAAI;EDqBT,aAAa,ECtBR,IAAI;EDuBT,eAAe,EAAE,MAAM;EACvB,WAAW,EAAE,MAAM;;AAGrB,UAAW;EACT,KAAK,EAAE,OAAO;EACd,SAAS,ECxBJ,IAAI;;AD2BX,UAAW;EACT,KAAK,EAAE,IAAI;EACX,MAAM,EAAE,IAAI;EACZ,SAAS,ECvBJ,IAAI;EDwBT,UAAU,EAAE,MAAM", 4 | "sources": ["loading.scss","common.scss"], 5 | "names": [], 6 | "file": "loading.css" 7 | } -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-lottery-rain/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "wxc-lottery-rain", 3 | "version": "0.1.0", 4 | "description": "Weex 版本的红包雨游戏组件", 5 | "main": "index.js", 6 | "lib": "vue", 7 | "type": "weex", 8 | "repository": "https://github.com/alibaba/weex-ui/tree/master/packages/wxc-lottery-rain", 9 | "keywords": [ 10 | "wxc-lottery-rain" 11 | ], 12 | "author": { 13 | "name": "Tw93", 14 | "email": "tw93@qq.com" 15 | }, 16 | "license": "MIT", 17 | "devDependencies": { 18 | }, 19 | "dependencies": { 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/loading.css: -------------------------------------------------------------------------------- 1 | .load-block { 2 | position: fixed; 3 | left: 280px; 4 | right: 280px; 5 | height: 150px; 6 | background-color: #000000; 7 | opacity: 0.7; 8 | top: 350px; 9 | padding-left: 20px; 10 | padding-right: 20px; 11 | border-radius: 15px; 12 | justify-content: center; 13 | align-items: center; } 14 | 15 | .load-text { 16 | color: #ffffff; 17 | font-size: 30px; } 18 | 19 | .load-icon { 20 | width: 64px; 21 | height: 64px; 22 | font-size: 50px; 23 | text-align: center; } 24 | 25 | /*# sourceMappingURL=loading.css.map */ 26 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/slider-bar.css: -------------------------------------------------------------------------------- 1 | .bui-slider-bar-box { 2 | position: fixed; 3 | width: 600px; 4 | top: 0px; 5 | bottom: 0px; 6 | background-color: #ffffff; 7 | padding: 30px; 8 | flex-direction: column; } 9 | 10 | .bui-left-slider-bar-box { 11 | left: -600px; } 12 | 13 | .bui-right-slider-bar-box { 14 | right: -600px; } 15 | 16 | .bui-slider-title { 17 | margin-top: 50px; 18 | text-align: center; } 19 | 20 | .bui-slider-content { 21 | margin-top: 50px; 22 | flex-direction: column; 23 | flex: 1; } 24 | 25 | /*# sourceMappingURL=slider-bar.css.map */ 26 | -------------------------------------------------------------------------------- /docs/Modules/请求发送(bmAxios).markdown: -------------------------------------------------------------------------------- 1 | ### bmAxios 2 | 3 | > 用于发送请求(GET、POST\) 4 | 5 | **引用方式** 6 | 7 | ```js 8 | var axios = weex.requireModule('bmAxios') 9 | ``` 10 | 11 | **API** 12 | 13 | * 发送请求 `fetch(info,callback)` 14 | 15 | ```js 16 | // 示例 17 | axios.fetch({ 18 | method: 'GET' // 请求类型 GET、POST、HEAD、PUT、DELETE、PATCH 19 | url: 'http://xxx/xxx', // 请求api,完整地址 20 | header: {} // 自定义请求头requestHeader 21 | data: {} // 请求参数 22 | }, function(resData){ 23 | // resData 数据 24 | }) 25 | ``` 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-lottery-rain/libs/util.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Created by Tw93 on 2017/6/26. 3 | */ 4 | 5 | export function isIOS () { 6 | let { platform } = weex.config.env; 7 | return platform.toLowerCase() === 'ios'; 8 | } 9 | 10 | export function isWeb () { 11 | let { platform } = weex.config.env; 12 | return typeof(window) === 'object' && platform.toLowerCase() === 'web'; 13 | } 14 | 15 | export function getPageHeight () { 16 | const { env } = weex.config; 17 | const navHeight = isWeb() ? 0 : 130; 18 | return env.deviceHeight / env.deviceWidth * 750 - navHeight; 19 | } 20 | -------------------------------------------------------------------------------- /docs/Modules/图片浏览(bmBrowserImg).markdown: -------------------------------------------------------------------------------- 1 | ### bmBrowserImg 2 | 3 | > 图片浏览器 4 | 5 | **引用方式** 6 | 7 | ```js 8 | var browser = weex.requireModule('bmBrowserImg') 9 | ``` 10 | 11 | **API** 12 | 13 | * 调起图片浏览器 `open(info,callback)` 14 | 15 | ```js 16 | // 示例 17 | browser.open({ 18 | index: 2, // 所点击图片下标 19 | images: ['1','2','3'], // 图片的网络地址 20 | type: 'network' // 图片的来源,目前只支持网络图片 21 | }, function(resDate){ 22 | // resDate 为空 23 | }) 24 | ``` 25 | 26 | * 关闭图片浏览器 `close()` 27 | 28 | ```js 29 | // 示例 30 | // 关闭图片浏览器 一般情况下js端不需要调用此接口 31 | browser.close() 32 | ``` 33 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab2/tip.vue: -------------------------------------------------------------------------------- 1 | 10 | 11 | 19 | 20 | 23 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/tip.css.map: -------------------------------------------------------------------------------- 1 | { 2 | "version": 3, 3 | "mappings": "AAEA,IAAK;EACH,YAAY,ECGP,IAAI;EDFT,aAAa,ECER,IAAI;EDDT,WAAW,ECCN,IAAI;EDAT,cAAc,ECAT,IAAI;EDCT,aAAa,ECHR,IAAI;EDIT,aAAa,ECJR,IAAI;;ADOX,QAAS;EACP,SAAS,EAAE,IAAI;;AAGjB,YAAa;EACX,gBAAgB,EAAE,OAAO;EACzB,YAAY,EAAE,OAAO;;AAGvB,gBAAiB;EACf,KAAK,EAAE,OAAO;;AAGhB,SAAU;EACR,gBAAgB,EAAE,OAAO;EACzB,YAAY,EAAE,OAAO;;AAGvB,aAAc;EACZ,KAAK,EAAE,OAAO;;AAGhB,YAAa;EACX,gBAAgB,EAAE,OAAO;EACzB,YAAY,EAAE,OAAO;;AAGvB,gBAAiB;EACf,KAAK,EAAE,OAAO;;AAGhB,WAAY;EACV,gBAAgB,EAAE,OAAO;EACzB,YAAY,EAAE,OAAO;;AAGvB,eAAgB;EACd,KAAK,EAAE,OAAO", 4 | "sources": ["tip.scss","common.scss"], 5 | "names": [], 6 | "file": "tip.css" 7 | } -------------------------------------------------------------------------------- /docs/android-开发/原生配置相关/项目导入.markdown: -------------------------------------------------------------------------------- 1 | ### 项目导入 2 | 3 | 如果你已经按照快速入门中的环境搭建下载好了JDK和AndroidStuido即可通过本节导入,运行项目。 4 | 5 | 1.点击AndroidStudio上方的**File--->New--->Import Project。** 6 | 7 | ![](https://img.benmu-health.com/gitbook/1505963461481.jpg) 8 | 9 | 2.找到eros在你本地的地址,选择**weex-eros/android/WeexFrameworkWrapper**,点击**OK。** 10 | 11 | ![](https://img.benmu-health.com/gitbook/1505963624252.jpg) 12 | 13 | 3.待项目构建完成,点击AndroidStudio上方工具栏的**Run**,即可运行项目。![](https://img.benmu-health.com/gitbook/1505963683163.jpg) 14 | 15 | #### 注意: 16 | 17 | 1.第一次打开AndroidStuido时,由于本地环境未配置好,AndroidStuido会提示错误,按照IDE提示,大部分环境问题都可以解决。 18 | 19 | 2.执行本节内容时,请确保你已经成功执行了eros install 和eros pack 。 20 | 21 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/dropdown.scss: -------------------------------------------------------------------------------- 1 | @import "common"; 2 | 3 | .bui-dropdown{ 4 | //position: fixed; 5 | //left:0px; 6 | //right: 0px; 7 | //top: 0px; 8 | //bottom: 0px; 9 | } 10 | 11 | .bui-dropdown-box{ 12 | position: fixed; 13 | opacity: 0; 14 | transform: scale(0.9, 0.9); 15 | } 16 | 17 | 18 | .bui-dropdown-content{ 19 | position: relative; 20 | margin-top: $nb40; 21 | border-radius: $nb10; 22 | flex-direction: column; 23 | overflow: hidden; 24 | padding: 15px; 25 | //background-color: $color_white; 26 | flex-direction: column; 27 | flex: 1; 28 | } 29 | 30 | .bui-dropdown-jiantou{ 31 | position: absolute; 32 | top: 1px; 33 | } 34 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-radio/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "wxc-radio", 3 | "version": "0.1.0", 4 | "description": "Weex 单选组组件,支持单个和一组的形式", 5 | "main": "index.js", 6 | "type": "weex", 7 | "repository": "https://github.com/alibaba/weex-ui/tree/master/packages/wxc-radio", 8 | "keywords": [ 9 | "Weex", 10 | "Vue", 11 | "WeexComponent", 12 | "DataEntry", 13 | "Radio", 14 | "WeexUi" 15 | ], 16 | "weex": { 17 | "plugins": {}, 18 | "market": { 19 | "thumbnail": "http://gtms03.alicdn.com/tfs/TB1cqyRSpXXXXbvXFXXXXXXXXXX-750-1334.png" 20 | } 21 | }, 22 | "author": "Tw93", 23 | "license": "MIT", 24 | "dependencies": {} 25 | } 26 | -------------------------------------------------------------------------------- /docs/更新日志/更新日志.markdown: -------------------------------------------------------------------------------- 1 | # 版本更新 2 | 3 | ### 1.1.2 4 | 脚手架已兼容 windows,并增加了部分指令 5 | 6 | ### 1.1.1 7 | 删除多余目录,解决init下来自动install的bug 8 | 9 | ### 1.1.0 10 | 更改发布脚本,所有目录777 11 | 12 | ### 1.0.9 13 | npm 与教授架指令冲突问题。 14 | 15 | ### 1.0.8 16 | 修改版本号被覆盖无法自动修改的问题。 17 | 18 | ### 1.0.7 19 | 1. 添加本地资源assets路径 20 | 2. 脚手架指令优化,预留出组件库下载指令 21 | 3. 脚手架命令行展示优化 22 | 4. 内置 demo 样式优化 23 | 24 | ### 1.0.6 25 | 优化细节字段,android可运行。 26 | 27 | ### 1.0.5 28 | 解决ios报错,删除多余字段,优化文档 29 | 30 | ### 1.0.4 31 | weex-eros-version bug 32 | 33 | ### 1.0.3 34 | 解决不能自动填写版本号,appName等bug 35 | 36 | ### 1.0.2 37 | weex-ero 优化脚手架,项目结构等 38 | 39 | ### 1.0.1 40 | weex-ero 完善 READEME.md , 并优化部分逻辑 41 | 42 | ### 1.0.0 43 | weex-eros 第一版完成 44 | 45 | 46 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-slider-bar/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "wxc-slider-bar", 3 | "version": "0.1.0", 4 | "description": "weex滚动条", 5 | "main": "index.js", 6 | "type": "weex", 7 | "repository": "https://github.com/alibaba/weex-ui/tree/master/packages/wxc-slider-bar", 8 | "keywords": [ 9 | "Weex", 10 | "Vue", 11 | "WeexComponent", 12 | "SliderBar", 13 | "WeexUi", 14 | "DataEnter" 15 | ], 16 | "weex": { 17 | "plugins": {}, 18 | "market": { 19 | "thumbnail": "http://gtms02.alicdn.com/tfs/TB1hJ_BSpXXXXcAaXXXXXXXXXXX-750-1334.png" 20 | } 21 | }, 22 | "author": "走鹃", 23 | "license": "MIT", 24 | "dependencies": {} 25 | } 26 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-tag/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "wxc-tag", 3 | "version": "0.1.0", 4 | "description": "Weex通用标签组件,支持实心标签、空心标签、特殊标签、图片标签", 5 | "main": "index.js", 6 | "type": "weex", 7 | "repository": "https://github.com/alibaba/weex-ui/tree/master/packages/wxc-tag", 8 | "keywords": [ 9 | "Weex", 10 | "Vue", 11 | "WeexComponent", 12 | "Tag", 13 | "DataDisplay", 14 | "WeexUi" 15 | ], 16 | "weex": { 17 | "plugins": {}, 18 | "market": { 19 | "thumbnail": "http://gtms02.alicdn.com/tfs/TB1aquRSpXXXXbRXFXXXXXXXXXX-738-363.png" 20 | } 21 | }, 22 | "author": "Tw93", 23 | "license": "MIT", 24 | "dependencies": {} 25 | } 26 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/_mods/category.vue: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 25 | 26 | 33 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-overlay/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "wxc-overlay", 3 | "version": "0.1.0", 4 | "description": "Weex蒙层组件,可以设置蒙层透明度,同时可以设置弹出动画", 5 | "main": "index.js", 6 | "type": "weex", 7 | "repository": "https://github.com/alibaba/weex-ui/tree/master/packages/wxc-overlay", 8 | "keywords": [ 9 | "Weex", 10 | "Vue", 11 | "WeexComponent", 12 | "Overlay", 13 | "Mask", 14 | "WeexUi" 15 | ], 16 | "weex": { 17 | "plugins": {}, 18 | "market": { 19 | "thumbnail": "https://img.alicdn.com/tfs/TB1RsTHSpXXXXb5XpXXXXXXXXXX-750-1334.png" 20 | } 21 | }, 22 | "author": "Tw93", 23 | "license": "MIT", 24 | "dependencies": {} 25 | } 26 | -------------------------------------------------------------------------------- /docs/前端开发/widget-列表/字体-|-font.markdown: -------------------------------------------------------------------------------- 1 | ### font(字体相关) 2 | 3 | * **changeFontSize** 改变字体大小。 4 | 5 | * **getFontSize** 获取当前字体大小。 6 | 7 | --- 8 | 9 | #### **changeFontSize ** {#storageset} 10 | 11 | > 改变字体大小。 12 | 13 | 示例: 14 | 15 | ```js 16 | this.$font.changeFontSize({ 17 | fontSize: 'NORM' 18 | }).then(resData => { 19 | // 收起成功的回调 20 | }, error => {}) 21 | ``` 22 | 23 | Api: 24 | 25 | * **fontSize**(**String**):字体大小 26 | * NORM:标准。 27 | * BIG:大。 28 | * EXTRALARGE:特大。 29 | 30 | #### **getFontSize ** {#storageget} 31 | 32 | > 获取当前字体大小。 33 | 34 | 示例: 35 | 36 | ```js 37 | this.$font.getFontSize( resData => { 38 | console.log(resData) 39 | }) 40 | ``` 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-loading/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "wxc-loading", 3 | "version": "0.1.0", 4 | "description": "Weex版本的loading组件,支持设置loading类型", 5 | "main": "index.js", 6 | "type": "weex", 7 | "repository": "https://github.com/alibaba/weex-ui/tree/master/packages/wxc-loading", 8 | "keywords": [ 9 | "Weex", 10 | "Vue", 11 | "WeexComponent", 12 | "Loading", 13 | "WeexUi", 14 | "Feedback" 15 | ], 16 | "weex": { 17 | "plugins": {}, 18 | "market": { 19 | "thumbnail": "http://gtms03.alicdn.com/tfs/TB1yu1CSpXXXXbxXVXXXXXXXXXX-750-1334.png" 20 | } 21 | }, 22 | "author": "Tw93", 23 | "license": "MIT", 24 | "dependencies": {} 25 | } 26 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-progress/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "wxc-progress", 3 | "version": "0.1.0", 4 | "description": "一个weex进度条组件,表明某个任务的当前进度", 5 | "main": "index.js", 6 | "type": "weex", 7 | "repository": "https://github.com/alibaba/weex-ui/tree/master/packages/wxc-progress", 8 | "keywords": [ 9 | "Weex", 10 | "Vue", 11 | "WeexComponent", 12 | "Feedback", 13 | "Progress", 14 | "WeexUi" 15 | ], 16 | "weex": { 17 | "plugins": {}, 18 | "market": { 19 | "thumbnail": "http://gtms04.alicdn.com/tfs/TB1xVD7SpXXXXaoXpXXXXXXXXXX-750-1334.png" 20 | } 21 | }, 22 | "author": "Tw93", 23 | "license": "MIT", 24 | "dependencies": {} 25 | } 26 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-stepper/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "wxc-stepper", 3 | "version": "0.1.0", 4 | "description": "步进器,用作增加或者减少当前数值,常用于商品数量的小幅度修改", 5 | "main": "index.js", 6 | "type": "weex", 7 | "repository": "https://github.com/alibaba/weex-ui/tree/master/packages/wxc-stepper", 8 | "keywords": [ 9 | "Weex", 10 | "Vue", 11 | "WeexComponent", 12 | "DataEntry", 13 | "Stepper", 14 | "WeexUi" 15 | ], 16 | "weex": { 17 | "plugins": {}, 18 | "market": { 19 | "thumbnail": "http://gtms03.alicdn.com/tfs/TB1K8P6SpXXXXbUXXXXXXXXXXXX-750-1334.png" 20 | } 21 | }, 22 | "author": "Tw93", 23 | "license": "MIT", 24 | "dependencies": {} 25 | } 26 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab2/image.vue: -------------------------------------------------------------------------------- 1 | 9 | 10 | 18 | 19 | 22 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/slider-bar.scss: -------------------------------------------------------------------------------- 1 | @import "common"; 2 | 3 | .bui-slider-bar{ 4 | //position: fixed; 5 | //left:0px; 6 | //right: 0px; 7 | //top: 0px; 8 | //bottom: 0px; 9 | } 10 | 11 | .bui-slider-bar-box{ 12 | position: fixed; 13 | width: 400px; 14 | top: 0px; 15 | bottom: 0px; 16 | background-color: $color_white; 17 | padding: $nb30; 18 | flex-direction: column; 19 | } 20 | .bui-left-slider-bar-box{ 21 | left: -400px; 22 | } 23 | .bui-right-slider-bar-box{ 24 | right: -400px; 25 | } 26 | 27 | .bui-slider-title{ 28 | margin-top: $nb50; 29 | text-align: center; 30 | } 31 | 32 | .bui-slider-content{ 33 | margin-top: $nb50; 34 | flex-direction: column; 35 | flex: 1; 36 | } -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/_mods/category.vue: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 25 | 26 | 33 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-button/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "wxc-button", 3 | "version": "0.1.0", 4 | "description": "Weex 按钮组件,支持 4 种基本类型 button,可自定义样式,支持不可点击", 5 | "main": "index.js", 6 | "type": "weex", 7 | "repository": "https://github.com/alibaba/weex-ui/tree/master/packages/wxc-button", 8 | "keywords": [ 9 | "Weex", 10 | "Vue", 11 | "WeexComponent", 12 | "Layout", 13 | "Button", 14 | "WeexUi" 15 | ], 16 | "weex": { 17 | "plugins": {}, 18 | "market": { 19 | "thumbnail": "http://gtms03.alicdn.com/tfs/TB1grYrSXXXXXX1XFXXXXXXXXXX-750-1334.png" 20 | } 21 | }, 22 | "author": "Tw93", 23 | "license": "MIT", 24 | "dependencies": {} 25 | } 26 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-button/type.js: -------------------------------------------------------------------------------- 1 | export const STYLE_MAP = { 2 | taobao: { 3 | backgroundColor: '#FF5000' 4 | }, 5 | fliggy: { 6 | backgroundColor: '#FFC900' 7 | }, 8 | normal: { 9 | backgroundColor: '#FFFFFF', 10 | borderColor: '#A5A5A5', 11 | borderWidth: '1px' 12 | }, 13 | highlight: { 14 | backgroundColor: '#FFFFFF', 15 | borderColor: '#EE9900', 16 | borderWidth: '1px' 17 | } 18 | }; 19 | 20 | export const TEXT_STYLE_MAP = { 21 | taobao: { 22 | color: '#FFFFFF' 23 | }, 24 | fliggy: { 25 | color: '#3D3D3D' 26 | }, 27 | normal: { 28 | color: '#3D3D3D' 29 | }, 30 | highlight: { 31 | color: '#EE9900' 32 | } 33 | }; 34 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-cell/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "wxc-cell", 3 | "version": "0.1.0", 4 | "description": "一个简单的Weex表单展示组件,单元格,可用作展示列表信息、链接或者表单等", 5 | "main": "index.js", 6 | "type": "weex", 7 | "repository": "https://github.com/alibaba/weex-ui/tree/master/packages/wxc-cell", 8 | "keywords": [ 9 | "Weex", 10 | "Vue", 11 | "WeexComponent", 12 | "DataDisplay", 13 | "Cell", 14 | "WeexUi" 15 | ], 16 | "weex": { 17 | "plugins": {}, 18 | "market": { 19 | "thumbnail": "https://img.alicdn.com/tfs/TB1qODvSpXXXXcGXFXXXXXXXXXX-750-1334.png" 20 | } 21 | }, 22 | "author": "Tw93", 23 | "license": "MIT", 24 | "dependencies": { 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-checkbox/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "wxc-checkbox", 3 | "version": "0.1.0", 4 | "description": "Weex复选框组件,支持单个和列表checkbox的设置", 5 | "main": "index.js", 6 | "type": "weex", 7 | "repository": "https://github.com/alibaba/weex-ui/tree/master/packages/wxc-checkbox", 8 | "keywords": [ 9 | "Weex", 10 | "Vue", 11 | "WeexComponent", 12 | "DataEntry", 13 | "Checkbox", 14 | "WeexUi" 15 | ], 16 | "weex": { 17 | "plugins": {}, 18 | "market": { 19 | "thumbnail": "http://gtms02.alicdn.com/tfs/TB1harlSXXXXXaoXpXXXXXXXXXX-750-1334.png" 20 | } 21 | }, 22 | "author": "Tw93", 23 | "license": "MIT", 24 | "dependencies": {} 25 | } 26 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-dialog/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "wxc-dialog", 3 | "version": "0.1.0", 4 | "description": "Weex二次确认弹窗组件,支持按钮定制(一个或者两个),可以设置标题和内容。", 5 | "main": "index.js", 6 | "type": "weex", 7 | "repository": "https://github.com/alibaba/weex-ui/tree/master/packages/wxc-dialog", 8 | "keywords": [ 9 | "Weex", 10 | "Vue", 11 | "WeexComponent", 12 | "Feedback", 13 | "Dialog", 14 | "WeexUi" 15 | ], 16 | "weex": { 17 | "plugins": {}, 18 | "market": { 19 | "thumbnail": "http://gtms03.alicdn.com/tfs/TB1EgnXSFXXXXX6aXXXXXXXXXXX-750-1334.png" 20 | } 21 | }, 22 | "author": "Tw93", 23 | "license": "MIT", 24 | "dependencies": {} 25 | } 26 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-minibar/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "wxc-minibar", 3 | "version": "0.1.0", 4 | "description": "Weex版本的顶部导航栏,建议优先使用native自带的navigator", 5 | "main": "index.js", 6 | "type": "weex", 7 | "repository": "https://github.com/alibaba/weex-ui/tree/master/packages/wxc-minibar", 8 | "keywords": [ 9 | "Weex", 10 | "Vue", 11 | "WeexComponent", 12 | "Minibar", 13 | "Navigator", 14 | "WeexUi" 15 | ], 16 | "weex": { 17 | "plugins": {}, 18 | "market": { 19 | "thumbnail": "https://img.alicdn.com/tfs/TB1t0rRSpXXXXa0XXXXXXXXXXXX-750-1334.png" 20 | } 21 | }, 22 | "author": "Tw93", 23 | "license": "MIT", 24 | "dependencies": {} 25 | } 26 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-popup/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "wxc-popup", 3 | "version": "0.1.0", 4 | "description": "Weex版本的popup组件,支持上下左右四个方向面板弹出。", 5 | "main": "index.js", 6 | "type": "weex", 7 | "repository": "https://github.com/alibaba/weex-ui/tree/master/packages/wxc-popup", 8 | "keywords": [ 9 | "Weex", 10 | "Vue", 11 | "WeexComponent", 12 | "Feedback", 13 | "Popup", 14 | "Pad", 15 | "WeexUi" 16 | ], 17 | "weex": { 18 | "plugins": {}, 19 | "market": { 20 | "thumbnail": "https://img.alicdn.com/tfs/TB1rLu.SpXXXXbIapXXXXXXXXXX-750-1334.png" 21 | } 22 | }, 23 | "author": "Tw93", 24 | "license": "MIT", 25 | "dependencies": {} 26 | } 27 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-result/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "wxc-result", 3 | "version": "0.1.0", 4 | "description": "Weex通用的错误结果页面,包括通用错误、无商品、无网络的错误情况,可配置覆盖原有", 5 | "main": "index.js", 6 | "type": "weex", 7 | "repository": "https://github.com/alibaba/weex-ui/tree/master/packages/wxc-result", 8 | "keywords": [ 9 | "Weex", 10 | "Vue", 11 | "WeexComponent", 12 | "Feedback", 13 | "Result", 14 | "WeexUi" 15 | ], 16 | "weex": { 17 | "plugins": {}, 18 | "market": { 19 | "thumbnail": "http://gtms02.alicdn.com/tfs/TB1X71ySpXXXXbDaXXXXXXXXXXX-750-1334.png" 20 | } 21 | }, 22 | "author": "Tw93", 23 | "license": "MIT", 24 | "dependencies": {} 25 | } 26 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/tag/demo.data.js: -------------------------------------------------------------------------------- 1 | const tag1 = { 2 | type: 'solid', 3 | tagColor: '#ff5000', 4 | fontColor: '#ffffff', 5 | value: '实心标签' 6 | }; 7 | 8 | const tag2 = { 9 | type: 'hollow', 10 | tagColor: '#666666', 11 | fontColor: '#666666', 12 | value: '空心标签' 13 | }; 14 | 15 | const tag3 = { 16 | type: 'special', 17 | tagColor: '#FF5000', 18 | fontColor: '#FF5000', 19 | specialIcon: '//gtms02.alicdn.com/tfs/TB1gC.jRVXXXXaiXFXXXXXXXXXX-32-32.png', 20 | value: '特殊标签' 21 | }; 22 | 23 | const tag4 = { 24 | type: 'image', 25 | img: '//gtms04.alicdn.com/tfs/TB1ZfodRVXXXXciXFXXXXXXXXXX-92-24.png' 26 | }; 27 | 28 | module.exports = { 29 | tag1, 30 | tag2, 31 | tag3, 32 | tag4 33 | } 34 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-simple-flow/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "wxc-simple-flow", 3 | "version": "0.1.0", 4 | "description": "Weex版本简易流程图,允许配置主题色", 5 | "main": "index.js", 6 | "type": "weex", 7 | "repository": "https://github.com/alibaba/weex-ui/tree/master/packages/wxc-simple-flow", 8 | "keywords": [ 9 | "Weex", 10 | "Vue", 11 | "WeexComponent", 12 | "DataDisplay", 13 | "SimpleFlow", 14 | "WeexUi" 15 | ], 16 | "weex": { 17 | "plugins": {}, 18 | "market": { 19 | "thumbnail": "http://gtms04.alicdn.com/tfs/TB12jLwSpXXXXcVaXXXXXXXXXXX-750-1334.png" 20 | } 21 | }, 22 | "author": "南麓", 23 | "license": "MIT", 24 | "dependencies": { 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/radio.scss: -------------------------------------------------------------------------------- 1 | @import "common"; 2 | 3 | .radio-box { 4 | align-items: center; 5 | padding-top: $nb15; 6 | padding-bottom: $nb15; 7 | padding-left: $nb5; 8 | margin-right: $nb40; 9 | padding-right: $nb20; 10 | } 11 | 12 | .radio-label { 13 | font-size: $nb30; 14 | } 15 | 16 | .disabled { 17 | opacity: 0.5; 18 | } 19 | 20 | .switch-box { 21 | height: 80px; 22 | } 23 | 24 | .switch { 25 | position: absolute; 26 | right: 0px; 27 | top: 0px; 28 | } 29 | 30 | .switch-label { 31 | font-size: $nb30; 32 | position: absolute; 33 | top: 10px; 34 | left: 0px; 35 | } 36 | 37 | .flex-column { 38 | flex-direction: column; 39 | } 40 | 41 | .flex-row { 42 | flex-direction: row; 43 | } -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-lightbox/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "wxc-lightbox", 3 | "version": "0.1.0", 4 | "description": ": Weex版本的图片列表全屏显示,常用于详情页面的图片放大显示,然后用户清晰看到效果", 5 | "main": "index.js", 6 | "type": "weex", 7 | "repository": "https://github.com/alibaba/weex-ui/tree/master/packages/wxc-lightbox", 8 | "keywords": [ 9 | "Weex", 10 | "Vue", 11 | "WeexComponent", 12 | "Feedback", 13 | "Lightbox", 14 | "WeexUi" 15 | ], 16 | "weex": { 17 | "plugins": {}, 18 | "market": { 19 | "thumbnail": "http://gtms03.alicdn.com/tfs/TB1rVf3RVXXXXaDXpXXXXXXXXXX-750-1334.png" 20 | } 21 | }, 22 | "author": "Tw93", 23 | "license": "MIT", 24 | "dependencies": {} 25 | } 26 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-mask/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "wxc-mask", 3 | "version": "0.1.0", 4 | "description": "一个提供关闭按钮的Weex Mask弹窗组件,可以定制content里面的内容。", 5 | "main": "index.js", 6 | "type": "weex", 7 | "repository": "https://github.com/alibaba/weex-ui/tree/master/packages/wxc-mask", 8 | "keywords": [ 9 | "Weex", 10 | "Vue", 11 | "WeexComponent", 12 | "Feedback", 13 | "Mask", 14 | "WeexUi", 15 | "HummingBird" 16 | ], 17 | "weex": { 18 | "plugins": {}, 19 | "market": { 20 | "thumbnail": "https://img.alicdn.com/tfs/TB12LjkSpXXXXa9aXXXXXXXXXXX-750-1334.png" 21 | } 22 | }, 23 | "author": "Tw93", 24 | "license": "MIT", 25 | "dependencies": {} 26 | } 27 | -------------------------------------------------------------------------------- /src/js/widget/share.js: -------------------------------------------------------------------------------- 1 | const share = weex.requireModule('bmShare') 2 | 3 | const Share = Object.create(null) 4 | 5 | Share.install = (Vue, options) => { 6 | Vue.prototype.$share = (cfg) => { 7 | return new Promise((resolve, reject) => { 8 | share.share({ 9 | title: cfg.title, 10 | content: cfg.content || '', 11 | image: cfg.image || '', 12 | url: cfg.url || '', 13 | platforms: cfg.platforms || [] // 传空的话默认全部 14 | 15 | }, data => { 16 | resolve(data) 17 | }, err => { 18 | reject(err) 19 | }) 20 | }) 21 | } 22 | } 23 | 24 | Vue.use(Share) 25 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/tag/demo.data.js: -------------------------------------------------------------------------------- 1 | const tag1 = { 2 | type: 'solid', 3 | tagColor: '#ff5000', 4 | fontColor: '#ffffff', 5 | value: '实心标签' 6 | }; 7 | 8 | const tag2 = { 9 | type: 'hollow', 10 | tagColor: '#666666', 11 | fontColor: '#666666', 12 | value: '空心标签' 13 | }; 14 | 15 | const tag3 = { 16 | type: 'special', 17 | tagColor: '#FF5000', 18 | fontColor: '#FF5000', 19 | specialIcon: '//gtms02.alicdn.com/tfs/TB1gC.jRVXXXXaiXFXXXXXXXXXX-32-32.png', 20 | value: '特殊标签' 21 | }; 22 | 23 | const tag4 = { 24 | type: 'image', 25 | img: '//gtms04.alicdn.com/tfs/TB1ZfodRVXXXXciXFXXXXXXXXXX-92-24.png' 26 | }; 27 | 28 | module.exports = { 29 | tag1, 30 | tag2, 31 | tag3, 32 | tag4 33 | } 34 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-indexlist/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "wxc-indexlist", 3 | "version": "0.1.0", 4 | "description": " 一个Weex版本索引列表组件,可以通过索引快速定位,常用于联系人列表、城市列表的基础组件", 5 | "main": "index.js", 6 | "type": "weex", 7 | "repository": "https://github.com/alibaba/weex-ui/tree/master/packages/wxc-indexlist", 8 | "keywords": [ 9 | "Weex", 10 | "Vue", 11 | "WeexComponent", 12 | "DataDisplay", 13 | "Indexlist", 14 | "WeexUi" 15 | ], 16 | "weex": { 17 | "plugins": {}, 18 | "market": { 19 | "thumbnail": "http://gtms02.alicdn.com/tfs/TB1ANntSpXXXXXzapXXXXXXXXXX-750-1334.png" 20 | } 21 | }, 22 | "author": "Tw93", 23 | "license": "MIT", 24 | "dependencies": {} 25 | } 26 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-rich-text/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "wxc-rich-text", 3 | "version": "0.1.0", 4 | "description": "一个Weex富文本的通用解决方案,支持text、icon、link、tag四种形式的混排", 5 | "main": "index.js", 6 | "type": "weex", 7 | "repository": "https://github.com/alibaba/weex-ui/tree/master/packages/wxc-rich-text", 8 | "keywords": [ 9 | "Weex", 10 | "Vue", 11 | "WeexComponent", 12 | "DataDisplay", 13 | "RichText", 14 | "WeexUi" 15 | ], 16 | "weex": { 17 | "plugins": {}, 18 | "market": { 19 | "thumbnail": "http://gtms03.alicdn.com/tfs/TB1eXLpSpXXXXbgapXXXXXXXXXX-750-1334.png" 20 | } 21 | }, 22 | "author": "Tw93", 23 | "license": "MIT", 24 | "dependencies": { 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-searchbar/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "wxc-searchbar", 3 | "version": "0.1.0", 4 | "description": "Weex搜索栏组件,一般可位于 NavBar 下方,通过『取消按钮』退出激活状态, 允许设置点击跳转,支持带出发地形式的搜索。", 5 | "main": "index.js", 6 | "type": "weex", 7 | "repository": "https://github.com/alibaba/weex-ui/tree/master/packages/wxc-searchbar", 8 | "keywords": [ 9 | "Weex", 10 | "Vue", 11 | "WeexComponent", 12 | "DataEntry", 13 | "Searchbar", 14 | "WeexUi" 15 | ], 16 | "weex": { 17 | "plugins": {}, 18 | "market": { 19 | "thumbnail": "https://img.alicdn.com/tfs/TB13Y_fSpXXXXXrapXXXXXXXXXX-750-1334.png" 20 | } 21 | }, 22 | "author": "Tw93", 23 | "license": "MIT", 24 | "dependencies": {} 25 | } 26 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-noticebar/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "wxc-noticebar", 3 | "version": "0.1.0", 4 | "description": "Weex版本的通知栏,在导航栏下方,一般用作系统提醒、活动提醒等通知。", 5 | "main": "index.js", 6 | "type": "weex", 7 | "repository": "https://github.com/alibaba/weex-ui/tree/master/packages/wxc-noticebar", 8 | "keywords": [ 9 | "Weex", 10 | "Vue", 11 | "WeexComponent", 12 | "DataDisplay", 13 | "Noticebar", 14 | "WeexUi" 15 | ], 16 | "weex": { 17 | "plugins": {}, 18 | "market": { 19 | "thumbnail": "http://gtms03.alicdn.com/tfs/TB1g0YASFXXXXXrapXXXXXXXXXX-750-1334.png" 20 | } 21 | }, 22 | "author": "Tw93", 23 | "license": "MIT", 24 | "dependencies": { 25 | "url-parse": "^1.1.9" 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-tab-page/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "wxc-tab-page", 3 | "version": "0.1.0", 4 | "description": "Weex版本tab页面滑动组件,允许对头部进行配置,高版本的weex支持淘expressionBinding手势跟随效果,其他版本支持降级效果滑动切换。", 5 | "main": "index.js", 6 | "type": "weex", 7 | "repository": "https://github.com/alibaba/weex-ui/tree/master/packages/wxc-tab-page", 8 | "keywords": [ 9 | "Weex", 10 | "Vue", 11 | "WeexComponent", 12 | "Navigator", 13 | "TabPage", 14 | "WeexUi" 15 | ], 16 | "weex": { 17 | "plugins": {}, 18 | "market": { 19 | "thumbnail": "http://gtms02.alicdn.com/tfs/TB1ztSGRVXXXXauXVXXXXXXXXXX-750-1334.png" 20 | } 21 | }, 22 | "author": "Tw93", 23 | "license": "MIT", 24 | "dependencies": { 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/panel.css.map: -------------------------------------------------------------------------------- 1 | { 2 | "version": 3, 3 | "mappings": "AAEA,MAAO;EACL,aAAa,EAAE,IAAI;EACnB,gBAAgB,EAAE,IAAI;EACtB,YAAY,EAAE,OAAO;EACrB,YAAY,EAAE,GAAG;;AAOnB,cAAe;EACb,YAAY,ECaE,OAAO;;ADVvB,cAAe;EACb,YAAY,ECcE,OAAO;;ADVvB,WAAY;EACV,YAAY,ECQD,OAAO;;ADJpB,cAAe;EACb,YAAY,ECME,OAAO;;ADFvB,aAAc;EACZ,YAAY,ECGC,OAAO;;ADCtB,aAAc;EACZ,gBAAgB,ECAH,OAAO;EDCpB,SAAS,EC3BJ,IAAI;ED4BT,KAAK,ECEO,OAAO;;ADIrB,qBAAsB;EACpB,gBAAgB,ECpBF,OAAO;EDqBrB,KAAK,ECCO,OAAO;;ADErB,qBAAsB;EACpB,gBAAgB,ECpBF,OAAO;EDqBrB,KAAK,ECJO,OAAO;;ADOrB,kBAAmB;EACjB,gBAAgB,EC1BL,OAAO;ED2BlB,KAAK,ECTO,OAAO;;ADYrB,qBAAsB;EACpB,gBAAgB,EC5BF,OAAO;ED6BrB,KAAK,ECdO,OAAO;;ADiBrB,oBAAqB;EACnB,gBAAgB,EC/BH,OAAO;EDgCpB,KAAK,ECnBO,OAAO", 4 | "sources": ["panel.scss","common.scss"], 5 | "names": [], 6 | "file": "panel.css" 7 | } -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-ep-slider/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "wxc-ep-slider", 3 | "version": "0.1.0", 4 | "description": "Weex vue 版本的表达式绑定效果的slider组件", 5 | "main": "index.js", 6 | "type": "weex", 7 | "repository": "https://github.com/alibaba/weex-ui/tree/master/packages/wxc-ep-slider", 8 | "keywords": [ 9 | "Weex", 10 | "Vue", 11 | "WeexComponent", 12 | "DataDisplay", 13 | "Layout", 14 | "Slider", 15 | "EpSlider", 16 | "WeexUi", 17 | "HummingBird" 18 | ], 19 | "weex": { 20 | "plugins": {}, 21 | "market": { 22 | "thumbnail": "http://gtms01.alicdn.com/tfs/TB1NasNSFXXXXamXXXXXXXXXXXX-750-1334.png" 23 | } 24 | }, 25 | "author": "Tw93", 26 | "license": "MIT", 27 | "dependencies": {} 28 | } 29 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-cell/icon.base64.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Created by Tw93 on 2016/10/29. 3 | */ 4 | module.exports = { 5 | arrowIcon: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAWBAMAAAA2mnEIAAAAMFBMVEUAAAAgIyUgIyUgIyUgIyUgIyUgIyUgIyUgIyUgIyUgIyUgIyUgIyUgIyUgIyUgIyXxqNxkAAAAEHRSTlMATEYxFA4CPTgqCUMlIhsZEJGcAQAAAE5JREFUGNNjAIKLDxjgQFAewT4o6ABncwqKICQmIkkwC6oiJAyFArBKsDUKLYBzMgR3ISQKxTHZCDUIvQgzMe1CCCPchnAzwi+YfkT4HQA98hAFt122dQAAAABJRU5ErkJggg==", 6 | extendIcon: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAJCAMAAAA1k+1bAAAAM1BMVEUAAACYmJiXl5eZmZmampqYmJiYmJiXl5eZmZmYmJiYmJiZmZmZmZmYmJibm5ubm5uZmZlAoLvfAAAAEHRSTlMA9fZuSmhhUfhzVziEQ0IhhORZQgAAAEJJREFUCNdFyzkSwCAMQ1Ehg9my6P6nTeF4eI3mFwJsTjNrrbn7hS2NUX4CHipxAajM6sDpUhE6o9KieOPYil96Yz7ijwK/GAbG3wAAAABJRU5ErkJggg==" 7 | } 8 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-page-calendar/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "wxc-page-calendar", 3 | "version": "0.1.0", 4 | "description": "一个性能更好的weex全屏日历组件,支持单程、往返日历的选择 、节假日显示 、设置日期附加信息", 5 | "main": "index.js", 6 | "type": "weex", 7 | "repository": "https://github.com/alibaba/weex-ui/tree/master/packages/wxc-page-calendar", 8 | "keywords": [ 9 | "Weex", 10 | "Vue", 11 | "WeexComponent", 12 | "Combination", 13 | "DataEntry", 14 | "Calendar", 15 | "PageCalendar", 16 | "WeexUi" 17 | ], 18 | "weex": { 19 | "plugins": {}, 20 | "market": { 21 | "thumbnail": "https://img.alicdn.com/tfs/TB17QrCSpXXXXXlXFXXXXXXXXXX-750-1334.png" 22 | } 23 | }, 24 | "author": "Tw93", 25 | "license": "MIT", 26 | "dependencies": {} 27 | } 28 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/components/bui-tabbar-item.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 29 | 30 | 35 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/_mods/title.vue: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10 | 11 | 30 | 31 | 38 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/loading.scss: -------------------------------------------------------------------------------- 1 | @charset "UTF-8"; 2 | 3 | @import "common"; 4 | 5 | 6 | 7 | 8 | .load-layout { 9 | //position: fixed; 10 | //left: 0px; 11 | //top: 0px; 12 | //bottom: 0px; 13 | //width: 750px; 14 | //flex-direction: row; 15 | //justify-content: center; 16 | } 17 | 18 | .load-block { 19 | position: fixed; 20 | left: 280px; 21 | right: 280px; 22 | height: 150px; 23 | background-color: $color_black; 24 | opacity: 0.7; 25 | top: 350px; 26 | padding-left: $nb20; 27 | padding-right: $nb20; 28 | border-radius: $nb15; 29 | justify-content: center; 30 | align-items: center; 31 | } 32 | 33 | .load-text { 34 | color: #ffffff; 35 | font-size: $nb30; 36 | } 37 | 38 | .load-icon { 39 | width: 64px; 40 | height: 64px; 41 | font-size: $nb50; 42 | text-align: center; 43 | } -------------------------------------------------------------------------------- /docs/Component/富文本(bmrichtext).markdown: -------------------------------------------------------------------------------- 1 | # 富文本标签(bmrichtext) 2 | 3 | 1.文本通过 `value`属性设置; 4 | 5 | 2.`bmspan`可以不写字体样式,默认会继承‘bmrichtext’的字体样式; 6 | 7 | 3.`bmrichtext` 与 `bmspan` 标签本身支持 `v-if`条件,但是不支持 `v-for`表达式,使用 `v-for`时可以在包一层`div`来实现; 8 | 9 | 10 | 11 | ```js 12 | 举个例子: 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 |
24 |
25 |
26 | ``` 27 | 28 | ![](https://img.benmu-health.com/gitbook/import.png) 29 | 30 | -------------------------------------------------------------------------------- /docs/前端开发/widget-使用.markdown: -------------------------------------------------------------------------------- 1 | #### widget {#widgetdef} 2 | 3 | widget** **是前端基于客户端拓展出来的 modules 相关功能的二次封装,以vue插件的形式,全部注入到客户端的 framework Vue 原型上,我们直接通过 vue** **中的 this** **来快速使用。主要目的是为了简化使用逻辑,聚合更高的业务关注度。 4 | 5 | `widget`其实就是内嵌到本木基础库中的一个`js bundle`,在每打开一个`页面`(加载一个`js bundle`)的时候就会预先执行,每个页面都会执行的原因是,客户端的 `framework Vue`每次生成一个`vue实例`都是通过`新的Vue构造函数`来生成的,而我们把`widget`放在客户端内置的好处是,每个页面打包的js bundle体积会小,不会产生冗余代码。 6 | 7 | #### 使用方法 8 | 9 | 直接在 this 上调用,比如我们发一个 **get 请求。** 10 | 11 | ```js 12 | this.$fetch({ 13 | method: 'GET', 14 | name: 'COMMON_getInfo' //当前是在apis中配置的别名,你也可以直接绝对路径请求 url: http://xx.xx.com/xxx/xxx 15 | data: { 16 | count: 1 17 | } 18 | }).then(resData => { 19 | // 成功回调 20 | console.log(resData) 21 | }, error => { 22 | // 错误回调 23 | console.log(error) 24 | }) 25 | ``` 26 | 27 | 下面看看我们到底拓展了哪些 widget。 28 | 29 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/_mods/title.vue: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 10 | 11 | 30 | 31 | 38 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/tag/regular.vue: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 11 | 12 | 22 | 23 | 34 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/searchbar.css.map: -------------------------------------------------------------------------------- 1 | { 2 | "version": 3, 3 | "mappings": "AAIA,cAAc;EACZ,YAAY,ECCP,IAAI;EDAT,WAAW,ECDN,IAAI;EDET,aAAa,ECDR,IAAI;EDET,cAAc,ECHT,IAAI;;ADKX,UAAU;EACR,gBAAgB,ECsCJ,OAAO;EDrCnB,aAAa,ECRR,IAAI;EDST,YAAY,ECPP,IAAI;EDQT,WAAW,ECTN,IAAI;EDUT,aAAa,ECTR,IAAI;EDUT,cAAc,ECXT,IAAI;EDYT,QAAQ,EAAE,QAAQ;;AAKpB,yBAAyB;EACvB,KAAK,ECqBS,OAAO;EDpBrB,SAAS,ECdJ,IAAI;EDeT,YAAY,ECpBP,IAAI;;ADsBX,sBAAsB;EACpB,SAAS,EClBJ,IAAI;EDmBT,MAAM,ECfD,IAAI;EDgBT,YAAY,EC1BP,IAAI;ED2BT,aAAa,EC3BR,IAAI;;AD6BX,kBAAkB;EAChB,SAAS,ECxBJ,IAAI;EDyBT,YAAY,EC9BP,IAAI;ED+BT,WAAW,EC/BN,IAAI;EDgCT,aAAa,ECjCR,IAAI;EDkCT,cAAc,ECjCT,IAAI;;ADmCX,sBAAsB;EACpB,gBAAgB,ECHH,OAAO;;ADKtB,8BAA8B;EAC5B,KAAK,ECDS,OAAO;;ADGvB,sBAAsB;EACpB,gBAAgB,EAAE,OAAO;;AAE3B,8BAA8B;EAC5B,KAAK,ECDO,OAAO", 4 | "sources": ["searchbar.scss","common.scss"], 5 | "names": [], 6 | "file": "searchbar.css" 7 | } -------------------------------------------------------------------------------- /docs/前端开发/widget-列表/分享-|-share.markdown: -------------------------------------------------------------------------------- 1 | ### share(分享相关) 2 | 3 | 示例: 4 | 5 | ```js 6 | this.$share({ 7 | title:'', // 分享出去的 title 8 | content:'', // 内容 9 | url: '' // 用户点击后跳转 url 10 | image: '', // 图片url 11 | platforms: ['Pasteboard','WechatSession'] // 传空的话默认全部,目前 朋友圈,朋友,复制链接 12 | }).then(resData => { 13 | // 成功的回调 14 | }, error => { 15 | // 失败的回调 16 | }) 17 | ``` 18 | 19 | Api: 20 | 21 | * **title**(**String**):分享出去的 title。 22 | * **content**(**String**):分享的内容简述。 23 | * **url**(**String**):用户点击后跳转 url。 24 | * **img**(**String**):图片 url。 25 | * **plaforms**(**Array**):平台 26 | * **Pasteboard**:剪切板。 27 | * **WechatSession**:微信好友。 28 | * **WechatTimeLine**:分享至朋友圈。 29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/tip.css: -------------------------------------------------------------------------------- 1 | .tip { 2 | padding-left: 20px; 3 | padding-right: 20px; 4 | padding-top: 20px; 5 | padding-bottom: 20px; 6 | border-radius: 10px; 7 | margin-bottom: 10px; } 8 | 9 | .tip-txt { 10 | font-size: 30px; } 11 | 12 | .tip-success { 13 | background-color: #dff0d8; 14 | border-color: #d6e9c6; } 15 | 16 | .tip-txt-success { 17 | color: #3c763d; } 18 | 19 | .tip-info { 20 | background-color: #d9edf7; 21 | border-color: #bce8f1; } 22 | 23 | .tip-txt-info { 24 | color: #31708f; } 25 | 26 | .tip-warning { 27 | background-color: #fcf8e3; 28 | border-color: #faebcc; } 29 | 30 | .tip-txt-warning { 31 | color: #8a6d3b; } 32 | 33 | .tip-danger { 34 | background-color: #f2dede; 35 | border-color: #ebccd1; } 36 | 37 | .tip-txt-danger { 38 | color: #a94442; } 39 | 40 | /*# sourceMappingURL=tip.css.map */ 41 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/tag/regular.vue: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 11 | 12 | 22 | 23 | 34 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/result/type.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Created by 侑夕 on 2016/11/4. 3 | */ 4 | module.exports = { 5 | errorPage: { 6 | pic: '//gtms01.alicdn.com/tfs/TB1HH4TSpXXXXauXVXXXXXXXXXX-320-320.png', 7 | content: '抱歉出错了,飞猪正在全力解决中', 8 | button: '再试一次', 9 | title: '出错啦' 10 | }, 11 | noGoods: { 12 | pic: '//gw.alicdn.com/tfs/TB1QXlEQXXXXXcNXFXXXXXXXXXX-320-320.png', 13 | content: '主人,这里什么都没有找到', 14 | button: '再试一次', 15 | title: '暂无商品' 16 | }, 17 | noNetwork: { 18 | pic: '//gw.alicdn.com/tfs/TB1rs83QXXXXXcBXpXXXXXXXXXX-320-320.png', 19 | content: '哎呀,没有网络了......', 20 | button: '刷新一下', 21 | title: '无网络' 22 | }, 23 | errorLocation: { 24 | pic: '//gw.alicdn.com/tfs/TB1rs83QXXXXXcBXpXXXXXXXXXX-320-320.png', 25 | content: '哎呀,定位失败了......', 26 | button: '刷新一下', 27 | title: '定位失败' 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /docs/Modules/分享(bmShare).markdown: -------------------------------------------------------------------------------- 1 | ### bmShare 2 | 3 | > 分享,目前支持 微信朋友圈,微信好友,赋值至剪切板 4 | 5 | **引用方式** 6 | 7 | ```js 8 | var share = weex.requireModule('bmShare') 9 | ``` 10 | 11 | **API** 12 | 13 | * 分享:`share(info,successCallback,failedCallback)` 14 | 15 | ```js 16 | share.share({ 17 | title:'', // 分享出去的 title, 如 本木医疗 18 | content:'', // 内容,是一家医疗公司 19 | url: '' // 用户点击后跳转 url 20 | image: '', // 图片url 21 | platforms: ['Pasteboard','WechatSession'] // 传空的话默认全部,目前 朋友圈,朋友,复制链接 22 | },function(resData){ 23 | // 成功回调 24 | },function(resData){ 25 | // 失败回调 26 | }) 27 | 28 | // 目前支持的分享平台 29 | platforms:[ 30 | Pasteboard, // 剪切板 31 | WechatSession, // 微信好友 32 | WechatTimeLine // 分享至朋友圈 33 | ] 34 | ``` 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/result/type.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Created by 侑夕 on 2016/11/4. 3 | */ 4 | module.exports = { 5 | errorPage: { 6 | pic: '//gtms01.alicdn.com/tfs/TB1HH4TSpXXXXauXVXXXXXXXXXX-320-320.png', 7 | content: '抱歉出错了,飞猪正在全力解决中', 8 | button: '再试一次', 9 | title: '出错啦' 10 | }, 11 | noGoods: { 12 | pic: '//gw.alicdn.com/tfs/TB1QXlEQXXXXXcNXFXXXXXXXXXX-320-320.png', 13 | content: '主人,这里什么都没有找到', 14 | button: '再试一次', 15 | title: '暂无商品' 16 | }, 17 | noNetwork: { 18 | pic: '//gw.alicdn.com/tfs/TB1rs83QXXXXXcBXpXXXXXXXXXX-320-320.png', 19 | content: '哎呀,没有网络了......', 20 | button: '刷新一下', 21 | title: '无网络' 22 | }, 23 | errorLocation: { 24 | pic: '//gw.alicdn.com/tfs/TB1rs83QXXXXXcBXpXXXXXXXXXX-320-320.png', 25 | content: '哎呀,定位失败了......', 26 | button: '刷新一下', 27 | title: '定位失败' 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-result/type.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Created by Tw93 on 2016/11/4. 3 | */ 4 | module.exports = { 5 | errorPage: { 6 | pic: '//gtms01.alicdn.com/tfs/TB1HH4TSpXXXXauXVXXXXXXXXXX-320-320.png', 7 | content: '抱歉出错了,飞猪正在全力解决中', 8 | button: '再试一次', 9 | title: '出错啦' 10 | }, 11 | noGoods: { 12 | pic: '//gw.alicdn.com/tfs/TB1QXlEQXXXXXcNXFXXXXXXXXXX-320-320.png', 13 | content: '主人,这里什么都没有找到', 14 | button: '再试一次', 15 | title: '暂无商品' 16 | }, 17 | noNetwork: { 18 | pic: '//gw.alicdn.com/tfs/TB1rs83QXXXXXcBXpXXXXXXXXXX-320-320.png', 19 | content: '哎呀,没有网络了......', 20 | button: '刷新一下', 21 | title: '无网络' 22 | }, 23 | errorLocation: { 24 | pic: '//gw.alicdn.com/tfs/TB1rs83QXXXXXcBXpXXXXXXXXXX-320-320.png', 25 | content: '哎呀,定位失败了......', 26 | button: '刷新一下', 27 | title: '定位失败' 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "eros-demo", 3 | "version": "1.0.0", 4 | "description": "a weex project", 5 | "main": "index.js", 6 | "keywords": [ 7 | "weex" 8 | ], 9 | "author": "Zero", 10 | "license": "MIT", 11 | "dependencies": { 12 | "lodash": "^4.17.4", 13 | "moment": "^2.18.1", 14 | "url-parse": "^1.1.9", 15 | "vue": "^2.1.7", 16 | "vuex": "^2.1.1", 17 | "weex-components": "*", 18 | "weex-eros-widget": "^1.0.1", 19 | "weex-vue-render": "^0.1.0-beta.2" 20 | }, 21 | "devDependencies": { 22 | "babel-core": "^6.20.0", 23 | "babel-loader": "^6.2.9", 24 | "babel-plugin-transform-runtime": "^6.23.0", 25 | "babel-preset-es2015": "^6.18.0", 26 | "babel-preset-stage-0": "^6.17.0", 27 | "babel-runtime": "^6.23.0" 28 | } 29 | } -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/tip.scss: -------------------------------------------------------------------------------- 1 | @import "common"; 2 | 3 | .tip { 4 | padding-left: $nb20; 5 | padding-right: $nb20; 6 | padding-top: $nb20; 7 | padding-bottom: $nb20; 8 | border-radius: $nb10; 9 | margin-bottom: $nb10; 10 | } 11 | 12 | .tip-txt { 13 | font-size: 30px; 14 | } 15 | 16 | .tip-success { 17 | background-color: #dff0d8; 18 | border-color: #d6e9c6; 19 | } 20 | 21 | .tip-txt-success { 22 | color: #3c763d; 23 | } 24 | 25 | .tip-info { 26 | background-color: #d9edf7; 27 | border-color: #bce8f1; 28 | } 29 | 30 | .tip-txt-info { 31 | color: #31708f; 32 | } 33 | 34 | .tip-warning { 35 | background-color: #fcf8e3; 36 | border-color: #faebcc; 37 | } 38 | 39 | .tip-txt-warning { 40 | color: #8a6d3b; 41 | } 42 | 43 | .tip-danger { 44 | background-color: #f2dede; 45 | border-color: #ebccd1; 46 | } 47 | 48 | .tip-txt-danger { 49 | color: #a94442; 50 | } -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/form.css.map: -------------------------------------------------------------------------------- 1 | { 2 | "version": 3, 3 | "mappings": "AAEA,SAAS;EACP,mBAAmB,EAAE,GAAG;EACxB,mBAAmB,EC0CN,OAAO;;ADpCtB,eAAe;EACb,SAAS,ECFJ,IAAI;EDGT,KAAK,ECgCS,OAAO;ED/BrB,YAAY,ECHP,IAAI;EDIT,WAAW,ECTN,IAAI;EDUT,cAAc,ECVT,IAAI;EDWT,gBAAgB,ECsBH,OAAO;;ADpBtB,eAAe;EACb,gBAAgB,EAAE,GAAG;EACrB,gBAAgB,EC0BH,OAAO;EDzBpB,WAAW,ECXN,IAAI;EDYT,cAAc,ECZT,IAAI;EDaT,YAAY,ECbP,IAAI;EDcT,aAAa,ECdR,IAAI;;ADgBX,sBAAsB;EACpB,eAAe,EAAE,aAAa;EAC9B,WAAW,EAAE,MAAM;;AAErB,qBAAqB;EACnB,eAAe,EAAE,aAAa;EAC9B,WAAW,EAAE,UAAU;;AAEzB,WAAW;EACT,SAAS,EC1BJ,IAAI;ED2BT,YAAY,EC5BP,IAAI;;AD8BX,aAAa;EACX,SAAS,EC7BJ,IAAI;ED8BT,KAAK,ECGS,OAAO;EDFrB,iBAAiB,ECEH,OAAO;;ADAvB,YAAY;EACV,QAAQ,EAAE,QAAQ;EAClB,GAAG,EAAE,KAAM;;AAEb,SAAS;EACP,MAAM,ECnCD,IAAI;;ADqCX,WAAW;EACT,KAAK,ECPS,OAAO;EDQrB,SAAS,EC5CJ,IAAI;;AD8CX,YAAY;EACV,KAAK,ECXS,OAAO;EDYrB,SAAS,EC7CJ,IAAI", 4 | "sources": ["form.scss","common.scss"], 5 | "names": [], 6 | "file": "form.css" 7 | } -------------------------------------------------------------------------------- /src/js/widget/axios.js: -------------------------------------------------------------------------------- 1 | /** 2 | * @Author: songqi 3 | * @Date: 2017-01-11 4 | * @Last modified by: songqi 5 | * @Last modified time: 2017-05-08 6 | */ 7 | 8 | var bmAxios = weex.requireModule('bmAxios') 9 | 10 | export default { 11 | install(Vue, options) { 12 | Vue.prototype.$fetch = (options) => { 13 | // 不仅支持 success, error 的回调写法,还支持 promise 的写法 14 | return new Promise((resolve, reject) => { 15 | bmAxios.fetch({ 16 | method: options.method || 'GET', 17 | url: Vue.prototype.eros.apis[options.name] || options.url, 18 | header: options.header || {}, 19 | data: options.data || {} 20 | }, (resData) => { 21 | // 可以做统一的监控 22 | Vue.prototype.eros.responseHandler(options, resData, resolve, reject) 23 | }) 24 | }) 25 | } 26 | } 27 | } -------------------------------------------------------------------------------- /docs/android-开发/准备.markdown: -------------------------------------------------------------------------------- 1 | ### 准备阶段 2 | 3 | 在开发调试Android之前你可能需要以下软件: 4 | 5 | 1. JDK 6 | 2. AndroidStudio 7 | 3. Charles 8 | 4. Genymotion 9 | 10 | JDK是JAVA开发包,AndroidStudio是Android开发IDE,这两项不再做过多介绍。重点解释Charles和Genymotion的用途。 11 | 12 | **Charles** 13 | 14 | Charles可以帮助你抓包和设置代理。如果你需要本地调试,为了让android设备成功访问到本地服务,需要将android设备的代理设置到你的pc上。关于Charles的使用可以参考[http://www.jianshu.com/p/fdd7c681929c](http://www.jianshu.com/p/fdd7c681929c) 15 | 16 | **Genymotion** 17 | 18 | 如果你使用Android模拟器进行开发调试,AndroidStudio内置的模拟器无法进行网络代理的设置,Genymotion是一个三方的免费模拟器,可以设置网络代理。代理设置流程: 19 | 20 | 1.打开设置页面,点击WIFI。![](https://img.benmu-health.com/gitbook/1505965984877.jpg) 21 | 22 | 2.长按WiredSSID,在弹窗中选择mofigy network。![](https://img.benmu-health.com/gitbook/1505966124180.jpg)3.将代理设置为手动,proxy host为你pc的ip地址,端口默认为8888,点击save完成设置。 23 | 24 | ![](https://img.benmu-health.com/gitbook/1505966248545.jpg) 25 | 26 | 4.上述过程需要你的设备和pc处于同一个局域网下,设置完成后,用android设备访问任意网址,查看charles是否有请求,如果存在,说明设置成功。 27 | 28 | -------------------------------------------------------------------------------- /docs/快速入门/指令介绍.markdown: -------------------------------------------------------------------------------- 1 | ### 脚手架相关命令介绍: 2 | 3 | 脚手架为 eros 提供的功能。 4 | 5 | #### **全局执行\( mac 下权限不足 sudo 执行,windows 下请登录管理员账户\)** 6 | 7 | --- 8 | 9 | `$ cnpm install BMFE_scaffold -g` 10 | 11 | > 全局安装 weex-eros 脚手架。 12 | 13 | `$ bm eros init` 14 | 15 | > 初始化eros项目模板。 16 | 17 | #### _**以下命令都需要在生成项目对应模板的**_`fe`_**目录下执行:**_ 18 | 19 | --- 20 | 21 | `$ bm eros dev` 22 | 23 | > eros 开发模式。 24 | 25 | ` $ bm eros pack` 26 | 27 | > 生成内置包加 --ios/android 后缀和快速选择对应平台。 28 | 29 | ` $ bm eros install` 30 | 31 | > 下载和更新客户端 weex-eros 相关 SDK 基础库和前端组件库加 --ios/android/fe 后缀和快速选择对应平台。 32 | 33 | `$ bm eros update (path)` 34 | 35 | > 更新最新模板的文件,假如你想更新fe/src/js/components 这个文件夹或者下文的文件,就输入这个目录即可,**但一定要谨慎使用,或者使用时候先提交一波,防止你本地已经修改的代码被覆盖。** 36 | 37 | `$ bm eros build` 38 | 39 | > 生成带有带有版本信息文件的zip包。 40 | 41 | ` $ bm eros build -s (server_url)` 42 | 43 | > 把版本信息发送到服务器特定地址,做增量发布逻辑。 44 | 45 | ` $ bm eros build -d` 46 | 47 | > 与之前发布过得版本 diff 生成差分包。 48 | 49 | -------------------------------------------------------------------------------- /docs/Modules/摄像头(bmCamera).markdown: -------------------------------------------------------------------------------- 1 | ### bmCamera 2 | 3 | > 扫一扫、拍照/系统相册选图并上传图片 4 | 5 | **引用方式** 6 | 7 | ```js 8 | var camera = weex.requireModule('bmCamera') 9 | ``` 10 | 11 | **API** 12 | 13 | * 扫一扫:`scan(callback)` 14 | 15 | ```js 16 | camera.scan(function(resDate){ 17 | // 18 | // {text:"扫码结果"} 19 | // 20 | }) 21 | ``` 22 | 23 | * 拍照/相册选图并上传服务器\(支持多选\):`uploadImage(info,callback)` 24 | 25 | ```js 26 | camera.uploadImage({ 27 | maxCount: 9, // 一次最多可选择图片数量 最大支持9张 28 | imageWidth: 1000, // 图片宽度(根据宽度按比例裁剪)可以不传默认为 800px 29 | allowCrop, // 是否允许编辑(只有当 maxCount == 1时 此参数才会生效) 30 | params: {} // 上传图片附加参数可为空 31 | },function(resData){ 32 | // 图片由客户端上传至图片服务器,上传完毕后通过回调方法将url传给js 33 | // resData 34 | // { 35 | // resCode: 0, 36 | // msg: '', 37 | // data: ['url1','url2'] //图片地址集合 38 | // } 39 | }) 40 | ``` 41 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /src/js/css/module/common-order.scss: -------------------------------------------------------------------------------- 1 | // 标题分类 2 | .wrap-label { 3 | padding-left: 30; 4 | padding-right: 30; 5 | padding-top: 50; 6 | padding-bottom: 30; 7 | flex-direction: row; 8 | justify-content: space-between; 9 | } 10 | .label-tit { 11 | font-size: $font-32; 12 | color: $blue-ink; 13 | } 14 | .line { 15 | margin-right: 18; 16 | width: 10; 17 | height: 16; 18 | border-radius: 10; 19 | } 20 | .line-green { 21 | background-color: $base-green; 22 | } 23 | .line-orange { 24 | background-color: $base-orange; 25 | } 26 | .line-black { 27 | background-color: $blue-ink; 28 | } 29 | .line-red { 30 | background-color: $base-red; 31 | } 32 | // 标题分类 end 33 | 34 | .order-num { 35 | margin-left: 30; 36 | font-size: $font-24; 37 | color: $base-white; 38 | font-weight: bold; 39 | padding-top: 8; 40 | padding-right: 10; 41 | padding-bottom: 8; 42 | padding-left: 10; 43 | border-radius: 32; 44 | background-color: $base-red; 45 | } -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab3/router.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 39 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-cell/utils.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Created by Tw93 on 2017/6/26. 3 | */ 4 | const UrlParser = require('url-parse'); 5 | const Utils = { 6 | UrlParser: UrlParser, 7 | appendProtocol (url) { 8 | if (/^\/\//.test(url)) { 9 | const { 10 | bundleUrl 11 | } = weex.config; 12 | return `http${/^https:/.test(bundleUrl) ? 's' : ''}:${url}`; 13 | } 14 | return url; 15 | }, 16 | encodeURLParams (url) { 17 | const parsedUrl = new UrlParser(url, true); 18 | return parsedUrl.toString(); 19 | }, 20 | goToH5Page (jumpUrl, animated = false, callback = null) { 21 | const Navigator= weex.requireModule('navigator') 22 | const jumpUrlObj = new Utils.UrlParser(jumpUrl, true); 23 | const url = Utils.appendProtocol(jumpUrlObj.toString()); 24 | Navigator.push({ 25 | url: Utils.encodeURLParams(url), 26 | animated: animated, 27 | }, callback); 28 | } 29 | } 30 | module.exports = Utils; 31 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-noticebar/utils.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Created by Tw93 on 2017/6/26. 3 | */ 4 | const UrlParser = require('url-parse'); 5 | const Utils = { 6 | UrlParser: UrlParser, 7 | appendProtocol (url) { 8 | if (/^\/\//.test(url)) { 9 | const { 10 | bundleUrl 11 | } = weex.config; 12 | return `http${/^https:/.test(bundleUrl) ? 's' : ''}:${url}`; 13 | } 14 | return url; 15 | }, 16 | encodeURLParams (url) { 17 | const parsedUrl = new UrlParser(url, true); 18 | return parsedUrl.toString(); 19 | }, 20 | goToH5Page (jumpUrl, animated = false, callback = null) { 21 | const Navigator= weex.requireModule('navigator') 22 | const jumpUrlObj = new Utils.UrlParser(jumpUrl, true); 23 | const url = appendProtocol(jumpUrlObj.toString()); 24 | Navigator.push({ 25 | url: Utils.encodeURLParams(url), 26 | animated: animated, 27 | }, callback); 28 | } 29 | } 30 | module.exports = Utils; 31 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/button.css.map: -------------------------------------------------------------------------------- 1 | { 2 | "version": 3, 3 | "mappings": "AAEA,IAAK;EACH,MAAM,ECkBA,KAAK;EDjBX,WAAW,ECiBL,KAAK;EDhBX,SAAS,ECOJ,IAAI;EDNT,UAAU,EAAE,MAAM;EAClB,YAAY,ECDP,IAAI;EDET,aAAa,ECFR,IAAI;;ADMX,YAAa;EACX,gBAAgB,ECcF,OAAO;EDbrB,KAAK,ECmCO,OAAO;;ADhCrB,mBAAoB;EAClB,gBAAgB,ECWG,OAAO;;ADR5B,YAAa;EACX,gBAAgB,ECUF,OAAO;EDTrB,KAAK,EC0BO,OAAO;;ADvBrB,mBAAoB;EAClB,gBAAgB,ECMK,OAAO;;ADH9B,SAAU;EACR,gBAAgB,ECHI,OAAO;;ADM7B,gBAAiB;EACf,gBAAgB,ECRF,OAAO;;ADWvB,YAAa;EACX,gBAAgB,ECLF,OAAO;EDMrB,KAAK,ECSO,OAAO;;ADNrB,mBAAoB;EAClB,gBAAgB,ECTK,OAAO;;ADY9B,WAAY;EACV,gBAAgB,ECZH,OAAO;EDapB,KAAK,ECAO,OAAO;;ADGrB,kBAAmB;EACjB,gBAAgB,EChBI,OAAO;;ADmB7B,aAAc;EACZ,gBAAgB,ECZD,OAAO;EDatB,YAAY,EAAE,GAAG;EACjB,YAAY,EAAE,KAAK;EACnB,YAAY,ECrBS,OAAO;EDsB5B,KAAK,ECjBS,OAAO;;ADoBvB,YAAa;EACX,gBAAgB,EC3BH,OAAO;ED4BpB,YAAY,EAAE,GAAG;EACjB,YAAY,EAAE,KAAK;EACnB,YAAY,EC7BS,OAAO;;ADgC9B,mBAAoB;EAClB,gBAAgB,ECjCK,OAAO", 4 | "sources": ["button.scss","common.scss"], 5 | "names": [], 6 | "file": "button.css" 7 | } -------------------------------------------------------------------------------- /docs/前端开发/widget-列表/工具-|-tools.markdown: -------------------------------------------------------------------------------- 1 | ### tools(工具相关) 2 | 3 | * **resignKeyboard** 收起键盘。 4 | 5 | * **isInstallWXApp** 是否安装微信。 6 | 7 | * **getCid** 获取cid 个推的app标识。 8 | 9 | * **copyString** 复制内容到剪切板。 10 | 11 | #### resignKeyboard** ** {#storageset} 12 | 13 | > 收起键盘。 14 | 15 | 示例: 16 | 17 | ```js 18 | this.$tools.resignKeyboard().then(resData => { 19 | // 收起成功的回调 20 | }, error => {}) 21 | ``` 22 | 23 | #### **isInstallWXApp ** {#storageget} 24 | 25 | > 是否安装微信。 26 | 27 | 示例: 28 | 29 | ```js 30 | this.$tools.isInstallWXApp().then(resData => { 31 | // 成功的回调 32 | }, error => {}) 33 | ``` 34 | 35 | #### getCid {#storagedelete} 36 | 37 | > 获取cid 个推的app标识。 38 | 39 | 示例: 40 | 41 | ```js 42 | this.$tools.getCid().then(resData => { 43 | // 成功的回调 44 | }, error => {}) 45 | ``` 46 | 47 | #### copyString 48 | 49 | > 复制内容到剪切板。 50 | 51 | 示例: 52 | 53 | ```js 54 | this.$tools.copyString("weex-eros").then(resData => { 55 | // 复制成功的回调 56 | }, error => {}) 57 | ``` 58 | 59 | 60 | 61 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-part-loading/index.vue: -------------------------------------------------------------------------------- 1 | 10 | 11 | 42 | -------------------------------------------------------------------------------- /src/js/widget/pay.js: -------------------------------------------------------------------------------- 1 | /** 2 | * @Author: songqi 3 | * @Date: 2017-01-11 4 | * @Last modified by: songqi 5 | * @Last modified time: 2017-02-09 6 | */ 7 | 8 | var pay = weex.requireModule('bmPay'), 9 | modal = weex.requireModule('bmModal') 10 | 11 | import isFunction from 'lodash/isFunction' 12 | 13 | var Pay = Object.create(null) 14 | 15 | Pay.install = (Vue, options) => { 16 | Vue.prototype.$pay = { 17 | wechat(params, callback){ 18 | return new Promise((resolve, reject) => { 19 | pay.payByWechat(params, (resData) => { 20 | if(isFunction(callback)){ 21 | callback.call(this, resData) 22 | } 23 | if(resData && resData.resCode == 0){ 24 | resolve(resData) 25 | }else{ 26 | reject(resData) 27 | } 28 | }) 29 | }) 30 | } 31 | } 32 | } 33 | 34 | Vue.use(Pay) 35 | -------------------------------------------------------------------------------- /docs/前端开发/widget-列表/存储-|-storage.markdown: -------------------------------------------------------------------------------- 1 | ### Storage(本地化存储) 2 | 3 | 我们在 app 端**异步的存储**一些数据信息,并已经为您封装并返回`Promise`。 4 | 5 | #### set** ** {#storageset} 6 | 7 | > 设置存储信息。 8 | 9 | 示例: 10 | 11 | ```js 12 | this.$storage.set('name', 'weex-eros') 13 | .then(resData => {}, error => {}) 14 | 15 | this.$storage.set('info', { 16 | name: 'weex-eors' 17 | }) 18 | .then(resData => {}, error => {}) 19 | ``` 20 | 21 | #### get** ** {#storageget} 22 | 23 | > 获取存储信息。 24 | 25 | 示例: 26 | 27 | ```js 28 | this.$storage.get('name').then(resData => { 29 | console.log(resData) // weex-eros 30 | }) 31 | ``` 32 | 33 | #### delete {#storagedelete} 34 | 35 | > 删除一条信息。 36 | 37 | 示例: 38 | 39 | ```js 40 | this.$storage.delete('name').then(resData => { 41 | console.log("删除成功") 42 | }) 43 | ``` 44 | 45 | #### removeAll {#storageremoveall} 46 | 47 | > 删除所有本地信息。 48 | 49 | 示例: 50 | 51 | ```js 52 | this.$storage.removeAll().then(resData => { 53 | console.log('本地所有持久化存储的数据都已被清空。') 54 | }) 55 | ``` 56 | 57 | 58 | 59 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/actionsheet.css.map: -------------------------------------------------------------------------------- 1 | { 2 | "version": 3, 3 | "mappings": "AAWA,oBAAoB;EAClB,QAAQ,EAAE,KAAK;EACf,IAAI,EAAE,GAAG;EACT,KAAK,EAAE,GAAG;EACV,MAAM,ECED,IAAI;EDDT,UAAU,EAAE,GAAG;EACf,cAAc,EAAE,MAAM;EACtB,QAAQ,EAAE,MAAM;;AAElB,oBAAoB;EAClB,aAAa,ECjBR,IAAI;EDmBT,QAAQ,EAAE,MAAM;EAChB,gBAAgB,ECyBJ,OAAO;;ADvBrB,uBAAuB;EACrB,UAAU,ECtBL,IAAI;;ADwBX,sBAAsB;EACpB,OAAO,ECpBF,IAAI;EDqBT,UAAU,EAAE,MAAM;EAClB,SAAS,ECvBJ,IAAI;EDwBT,KAAK,ECWS,OAAO;;ADRvB,wBAAwB;EAGtB,cAAc,EAAE,MAAM;EACtB,IAAI,EAAE,CAAC;;AAET,qBAAqB;EACnB,gBAAgB,EAAE,GAAG;EACrB,gBAAgB,ECEH,OAAO;EDDpB,OAAO,ECnCF,IAAI;EDoCT,UAAU,EAAE,MAAM;EAClB,SAAS,ECnCJ,IAAI;EDoCT,KAAK,ECrBS,OAAO;;ADuBvB,4BAA4B;EAC1B,gBAAgB,ECbH,OAAO;;ADetB,oBAAoB;EAClB,SAAS,EC1CJ,IAAI;ED2CT,KAAK,EC5BS,OAAO;ED6BrB,WAAW,EAAE,IAAI;EACjB,gBAAgB,ECRJ,OAAO;EDSnB,OAAO,EChDF,IAAI;EDiDT,UAAU,EAAE,MAAM;EAClB,aAAa,ECxDR,IAAI;;AD0DX,2BAA2B;EACzB,gBAAgB,ECzBH,OAAO;;AD4BtB,QAAQ;EACN,gBAAgB,ECxCF,OAAO", 4 | "sources": ["actionsheet.scss","common.scss"], 5 | "names": [], 6 | "file": "actionsheet.css" 7 | } -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/components/bui-button.vue: -------------------------------------------------------------------------------- 1 | 7 | 8 | 9 | 31 | 32 | -------------------------------------------------------------------------------- /docs/快速入门/内置打包.markdown: -------------------------------------------------------------------------------- 1 | ### 内置打包 2 | ___ 3 | 4 | #### 为什么要打内置包? 5 | 6 | 我们把当前所有页面的`js bundle`都内嵌到客户端中,这时候就可以把app给他人使用 7 | 8 | 当然,你的`js bundle`不可能常年不改,每次`js bundle`变化,不可能一次又一次来装你的`app`,这时候就需要一套[发布更新的逻辑](/fa-bu-geng-xin.md)。 9 | 10 | 以`ios`为例,如果需要用户强制升级的版本,送审的时候就可以带着最新版本的内置包去,用户下载到的自然你最新的版本,然后从这个版本起,每个不涉及`app`底层变动的小版本通过一套增量发布逻辑就可以更改你的`js bundle`,也就实现了不用送审,便自动更改了你页面的内容。 11 | 12 | #### 什么情况下需要打内置包? 13 | 14 | 1. **根目录的**`config.json`**变动的时候**,因为`config.json`还包含着一些业务逻辑,就比如请求地址,如果换了另一个地址,是需要把变动通知到`app`端的,也就是把`config.json`传入`app`对应的一个文件夹内,覆盖之前的`config.json`。 15 | 2. 你在`js`中写的一个业务功能已经开发完成,这时候也可以打一个内置包去测试。 16 | 17 | #### 如何打内置包? 18 | 19 | 打内置包,只需要在**fe目录下执行一行指令:** 20 | 21 | ``` 22 | $ bm eros pack 23 | ``` 24 | 25 | 以`ios`打内置包为例: 26 | 27 | ![](https://img.benmu-health.com/gitbook/pack.gif) 28 | 29 | 1. 我们会构建你所有暴露出来的js(dev.json中配置的exports的js),然后生成一个内置zip包,和包的一些相关信息`page.config`。 30 | 2. 脚手架会把项目根目录的`config.json`,`page.config`,`内置zip包`传入默认在`config.json`中配置的`zipFolder.iOS`相对路径,如果您不更改存放地址,就不需要修改`config.json`中的路径。 31 | 32 | 至此,内置打包过程已经结束,下面看看我们如可来进行业务开发。 33 | 34 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/panel.css: -------------------------------------------------------------------------------- 1 | .panel { 2 | margin-bottom: 20px; 3 | background-color: #fff; 4 | border-color: #dddddd; 5 | border-width: 1px; } 6 | 7 | .panel-primary { 8 | border-color: #3399ff; } 9 | 10 | .panel-success { 11 | border-color: #00cc66; } 12 | 13 | .panel-info { 14 | border-color: #5BC0DE; } 15 | 16 | .panel-warning { 17 | border-color: #ff9900; } 18 | 19 | .panel-danger { 20 | border-color: #ff4e24; } 21 | 22 | .panel-header { 23 | background-color: #f5f5f5; 24 | font-size: 34px; 25 | color: #464c5b; } 26 | 27 | .panel-header-primary { 28 | background-color: #3399ff; 29 | color: #ffffff; } 30 | 31 | .panel-header-success { 32 | background-color: #00cc66; 33 | color: #ffffff; } 34 | 35 | .panel-header-info { 36 | background-color: #5BC0DE; 37 | color: #ffffff; } 38 | 39 | .panel-header-warning { 40 | background-color: #ff9900; 41 | color: #ffffff; } 42 | 43 | .panel-header-danger { 44 | background-color: #ff4e24; 45 | color: #ffffff; } 46 | 47 | /*# sourceMappingURL=panel.css.map */ 48 | -------------------------------------------------------------------------------- /docs/前端开发/生命周期.markdown: -------------------------------------------------------------------------------- 1 | ### 生命周期 2 | 3 | 在不影响`vue生命周期`的前提下,`weex-eros`暴露出来了额外的生命周期钩子函数供您使用,但一定要注意,**这些钩子函数是异步的**。 4 | 5 | ``` 6 | export default { 7 | bmRouter: { 8 | 9 | viewWillAppear(params,options) {}, 10 | 11 | viewDidAppear: (params,options) {}, 12 | 13 | viewWillBackAppear: (params,options) {}, 14 | 15 | viewDidBackAppear: (params,options) {}, 16 | 17 | viewWillDisappear: (options) {}, 18 | 19 | viewDidDisappear: (options) {} 20 | } 21 | } 22 | ``` 23 | 24 | **Api:** 25 | 26 | * **viewWillAppear**\( **params** \| $router.open 时候传递的 params, **options **\):页面将要出现。 27 | 28 | * **viewDidAppear**\(**params** \| $router.open 时候传递的 params, **options**\):页面已经出现。 29 | 30 | * **viewWillBackAppear**\(**params** \| $router.setBackParams 时候设置的 params, **options**\):返回目标页面将要出现。 31 | 32 | * **viewDidBackAppear**\(**params** \| $router.setBackParams 时候设置的 params, **options**\):返回目标页面已经出现。 33 | 34 | * **viewWillDisappear**\(**options**\):页面将要消失。 35 | 36 | * **viewDidDisappear**\(**options**\):页面已经消失。 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/tag/image-advance.vue: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 31 | 32 | 42 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/components/bui-video.vue: -------------------------------------------------------------------------------- 1 | 13 | 14 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/tag/image-advance.vue: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 31 | 32 | 42 | -------------------------------------------------------------------------------- /src/js/widget/nav.js: -------------------------------------------------------------------------------- 1 | var navigator = weex.requireModule('bmNavigator'), 2 | modal = weex.requireModule('bmModal') 3 | 4 | import isFunction from 'lodash/isFunction' 5 | 6 | var Navigator = Object.create(null) 7 | 8 | Navigator.install = (Vue, options) => { 9 | Vue.prototype.$navigator = { 10 | setLeftItem(options, callback){ 11 | navigator.setLeftItem(options, () => { 12 | isFunction(callback) && callback() 13 | }) 14 | }, 15 | setRightItem(options, callback){ 16 | navigator.setRightItem(options, () => { 17 | isFunction(callback) && callback() 18 | }) 19 | }, 20 | setCenterItem(options, callback){ 21 | navigator.setCenterItem(options, () => { 22 | isFunction(callback) && callback() 23 | }) 24 | }, 25 | setNavigationInfo(options, callback){ 26 | navigator.setNavigationInfo(options, () => { 27 | isFunction(callback) && callback() 28 | }) 29 | } 30 | } 31 | } 32 | 33 | Vue.use(Navigator) 34 | -------------------------------------------------------------------------------- /docs/Modules/本地存储(bmStorage).markdown: -------------------------------------------------------------------------------- 1 | ### bmStorage 2 | 3 | > 数据存储 4 | 5 | **引用方式** 6 | 7 | ```js 8 | var storage = weex.requireModule('bmStorage') 9 | ``` 10 | 11 | **API** 12 | 13 | * 存数据: 14 | 15 | ```js 16 | // 异步方法:setData(key,data,callback) 17 | storage.setData('key','内容',function(resData){ 18 | // resData 19 | }) 20 | 21 | // 同步方法:setDataSync(key,data) 22 | var resData = storage.setData('key','内容') 23 | ``` 24 | 25 | * 取数据: 26 | 27 | ```js 28 | // 异步方法:getData(key,callback) 29 | storage.getData('key',function(resData){ 30 | // resData 31 | }) 32 | 33 | // 同步方法:getDataSync(key) 34 | var resData = storage.getData('key') 35 | ``` 36 | 37 | * 删除一条数据: 38 | 39 | ```js 40 | // 异步方法:deleteData(key,callback) 41 | storage.deleteData('key',function(resData){ 42 | // 43 | }) 44 | 45 | // 同步方法: deleteDataSync(key) 46 | var resData = storage.deleteData('key') 47 | ``` 48 | 49 | * 删除所有数据: 50 | 51 | ```js 52 | // 异步方法:removeData(callback) 53 | storage.removeData(function(resData){ 54 | // 55 | }) 56 | 57 | // 同步方法:removeDataSync() 58 | var resData = storage.removeData() 59 | ``` 60 | 61 | 62 | 63 | -------------------------------------------------------------------------------- /docs/Modules/认证(bmAuth).markdown: -------------------------------------------------------------------------------- 1 | ### bmAuth 2 | 3 | > 微信登录,指纹验证 4 | 5 | **引用方式** 6 | 7 | ```js 8 | var auth = weex.requireModule('bmAuth') 9 | ``` 10 | 11 | **API** 12 | 13 | * 调用微信登录认证 `wechat(info,callback)` 14 | 15 | ```js 16 | // 示例 17 | auth.wechat({ 18 | // 预留参数 目前传空 19 | }, function(resDate){ 20 | // resDate 21 | // { 22 | // resCode:0, 23 | // msg:"微信授权成功" 24 | // data:{ 25 | // name:'小花同学', 26 | // uid:'微信返回唯一标示' 27 | // } 28 | // } 29 | }) 30 | ``` 31 | 32 | * 是否支持指纹认证 `canUseTouchId()` 33 | 34 | ```js 35 | // 示例 36 | // 注:此方法是同步方法 37 | var resData = auth.canUseTouchId() 38 | // resDate 39 | // { 40 | // resCode:0, // 不支持返回 9 41 | // msg:"此设备支持 Touch Id" 42 | // data:{} 43 | // } 44 | ``` 45 | 46 | * 调用指纹认证 `touchId()` 47 | 48 | ```js 49 | // 示例 50 | auth.touchId({ 51 | title:'登录认证' // 指纹认证弹窗标题 52 | }, function(resData){ 53 | // resDate 54 | // { 55 | // resCode:0, // 认证失败返回 9 56 | // msg:"指纹认证成功" 57 | // data:{} 58 | // } 59 | }) 60 | ``` 61 | 62 | 63 | 64 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/components/bui-switch.vue: -------------------------------------------------------------------------------- 1 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/components/bui-panel.vue: -------------------------------------------------------------------------------- 1 | 25 | 26 | 27 | 28 | 39 | 40 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/searchbar.css: -------------------------------------------------------------------------------- 1 | .bui-searchbar { 2 | padding-left: 20px; 3 | padding-top: 15px; 4 | padding-right: 20px; 5 | padding-bottom: 15px; } 6 | 7 | .bui-input { 8 | background-color: #ffffff; 9 | border-radius: 10px; 10 | padding-left: 20px; 11 | padding-top: 15px; 12 | padding-right: 20px; 13 | padding-bottom: 15px; 14 | position: relative; } 15 | 16 | .bui-search-icon-box-text { 17 | color: #9ea7b4; 18 | font-size: 30px; 19 | padding-left: 15px; } 20 | 21 | .bui-search-input-text { 22 | font-size: 30px; 23 | height: 40px; 24 | padding-left: 10px; 25 | padding-right: 10px; } 26 | 27 | .bui-search-search { 28 | font-size: 30px; 29 | padding-left: 15px; 30 | padding-top: 15px; 31 | padding-right: 10px; 32 | padding-bottom: 15px; } 33 | 34 | .bui-search-bg-default { 35 | background-color: #f5f5f5; } 36 | 37 | .bui-search-text-color-default { 38 | color: #657180; } 39 | 40 | .bui-search-bg-primary { 41 | background-color: #4ca4fe; } 42 | 43 | .bui-search-text-color-primary { 44 | color: #ffffff; } 45 | 46 | /*# sourceMappingURL=searchbar.css.map */ 47 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/components/bui-tabbar-item-a.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 39 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/dialog.css.map: -------------------------------------------------------------------------------- 1 | { 2 | "version": 3, 3 | "mappings": "AAeA,gBAAiB;EACf,gBAAgB,ECyBJ,OAAO;EDxBnB,QAAQ,EAAE,QAAQ;EAClB,GAAG,EAAE,CAAC;EACN,MAAM,EAAE,CAAC;EACT,IAAI,EAAE,CAAC;EACP,KAAK,EAAE,CAAC;EACR,IAAI,EAAE,CAAC;EACP,OAAO,EAAE,GAAG;;AAGd,WAAY;EACV,QAAQ,EAAE,KAAK;EACf,gBAAgB,ECqBJ,OAAO;EDpBnB,aAAa,ECzBR,IAAI;ED0BT,MAAM,EA5BQ,KAAK;EA6BnB,GAAG,EAAE,KAAK;EACV,IAAI,ECfC,IAAI;EDgBT,KAAK,EChBA,IAAI;EDiBT,IAAI,EAAE,CAAC;;AAGT,iBAAkB;EAChB,eAAe,EAAE,MAAM;EACvB,MAAM,ECnBD,IAAI;EDoBT,YAAY,EC9BP,IAAI;ED+BT,aAAa,EC/BR,IAAI;;ADkCX,kBAAmB;EACjB,KAAK,ECJO,OAAO;EDKnB,SAAS,ECnCJ,IAAI;;ADsCX,mBAAoB;EAClB,MAAM,EA9CgB,KAAK;EA+C3B,YAAY,ECzCP,IAAI;ED0CT,aAAa,EC1CR,IAAI;ED2CT,cAAc,EC3CT,IAAI;;AD8CX,kBAAmB;EACjB,cAAc,EAAE,GAAG;EACnB,WAAW,EAAE,MAAM;EACnB,eAAe,EAAE,MAAM;EACvB,MAAM,ECxCD,IAAI;EDyCT,gBAAgB,EAAE,GAAG;EACrB,gBAAgB,EAAE,KAAK;EACvB,gBAAgB,ECjBH,OAAO;;ADoBtB,mBAAoB;EAClB,IAAI,EAAE,CAAC;EACP,UAAU,EAAE,MAAM;EAClB,SAAS,EC1DJ,IAAI;ED2DT,KAAK,EC3CS,OAAO;ED4CrB,kBAAkB,EAAE,GAAG;EACvB,kBAAkB,EAAE,KAAK;EACzB,kBAAkB,EC3BL,OAAO;;AD8BtB,0BAA2B;EACzB,KAAK,ECpCO,OAAO", 4 | "sources": ["dialog.scss","common.scss"], 5 | "names": [], 6 | "file": "dialog.css" 7 | } -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-loading/part.vue: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 14 | 15 | 46 | -------------------------------------------------------------------------------- /docs/Modules/弹窗模块(bmModal).markdown: -------------------------------------------------------------------------------- 1 | ### bmModal 2 | 3 | > 弹窗相关: alert、toast 等 4 | 5 | **引用方式** 6 | 7 | ```js 8 | var modal = weex.requireModule('bmModal') 9 | ``` 10 | 11 | **API** 12 | 13 | * 警告弹窗:`alert(info,callback)` 14 | 15 | ```js 16 | modal.alert({ 17 | message: '我是一个弹窗', // 弹窗内容 18 | okTitle: '确定', // 确定按钮文字 19 | title:'标题' // title 20 | }, function(){ 21 | // 点击按钮的回调 22 | }) 23 | ``` 24 | 25 | * 确定弹窗:`confirm(info,cancelCallback,okCallback)` 26 | 27 | ```js 28 | modal.confirm({ 29 | message: '我是一个弹窗', // 弹窗内容 30 | cancelTitle: '取消', // 取消按钮文字 31 | okTitle: '确定' // 确定按钮文字 32 | title: '' 33 | }, function(){ 34 | // 点击取消按钮回调 35 | }, function(){ 36 | // 点击确定按钮回调 37 | }); 38 | ``` 39 | 40 | * 提示框:`toast(info)` 41 | 42 | ```js 43 | modal.toast({ 44 | message: '提示信息' // 展示内容 45 | }) 46 | ``` 47 | 48 | * Loading提示框:`showLading(info)` 49 | 50 | ```js 51 | // 调用方式 52 | modal.showLoading({ 53 | message: '加载中...' // loading 文字,可为空 54 | }); 55 | ``` 56 | 57 | * 移除 Loading弹窗:`hideLoading()` 58 | 59 | ```js 60 | modal.hideLoading() 61 | ``` 62 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /docs/前端开发/widget-拓展.markdown: -------------------------------------------------------------------------------- 1 | ### 拓展 2 | 3 | > 当我们暴露出来的widget api 已经无法满足您时,你可以便可以自行基于客户端暴露出来的 modules 来拓展自己的 widget 。 4 | 5 | 假如我们要添加一个基于 bmModal module 创建的 widget 。 6 | 7 | 首先添加 **widget/toast.js** 。 8 | 9 | ![](https://img.benmu-health.com/gitbook/widgetToast.png) 10 | 11 | **toast.js **中用`vue插件`的写法来写。 12 | 13 | ```js 14 | var modal = weex.requireModule('bmModal'), 15 | Toast = Object.create(null) 16 | 17 | Toast.install = (Vue, options) => { 18 | Vue.prototype.$toast = (options) => { 19 | if(!options.message) return 20 | modal.toast({ 21 | message: options.message, 22 | duration: options.duration || 2000 23 | }) 24 | } 25 | } 26 | 27 | Vue.use(Toast) 28 | ``` 29 | 30 | toast widget 已经大功告成,您只需要引入便可以使用。 31 | 32 | ```js 33 | // pages/hello/index.js 34 | 35 | // 引入你的widget 36 | import 'Widget/toast' 37 | 38 | 39 | import Home from './index.vue' 40 | new Vue(Vue.util.extend({ el: '#root'}, Home)) 41 | ``` 42 | 43 | **index.vue** 中便可使用。 44 | 45 | ```js 46 | this.$toast({ 47 | message: '我自己拓展的', 48 | duration: 200 49 | }) 50 | ``` 51 | 52 | **如果您想覆盖,只需要在 Vue.prototype 上覆盖我们改在上去的名称即可,如 $fetch 等等。** 53 | 54 | -------------------------------------------------------------------------------- /docs/Modules/导航栏(bmNavigator).markdown: -------------------------------------------------------------------------------- 1 | ### bmNavigator 2 | 3 | > 设置原生导航栏按钮,支持文字,或图片 4 | 5 | **引用方式** 6 | 7 | ```js 8 | var navigator = weex.requireModule('bmNavigator') 9 | ``` 10 | 11 | **API** 12 | 13 | * 设置导航栏左边按钮:`setLeftItem(info,callback)` 14 | 15 | ```js 16 | //示例 17 | navigator.setLeftItem({ 18 | text: '', // 展示的文字 (和图片 二选一) 19 | textColor: '', // 文字颜色 (默认为白色) 20 | fontSize: '32', // 字号(默认32px) 21 | fontWeight: 'normal', // 是否加粗(默认不加粗) 22 | image: '', // 展示的图片 (和文字 二选一,文字优先级更高) 23 | }, function(){ 24 | // 按钮点击回调的方法 callback 25 | } 26 | ``` 27 | 28 | * 设置导航栏右边按钮:`setRightItem(info,callback)` 调用方式与上面👆的一致; 29 | 30 | * 设置导航栏中间的按钮:`setCenterItem(info,callback)` 调用方式与上面一致 31 | 32 | * 设置其他信息:`setNavigationInfo(info,callback)` 33 | 34 | ```js 35 | navigator.setNavigationInfo({ 36 | title: '', // 标题 37 | navShow: false, // 是否显示导航栏 38 | statusBarStyle: 'Default', // 状态栏文字颜色:Defautl 黑色, LightContent 白色 39 | },function(resData){ 40 | // 预留 41 | }) 42 | ``` 43 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/form.css: -------------------------------------------------------------------------------- 1 | .bui-form { 2 | border-bottom-width: 1px; 3 | border-bottom-color: #d7dde4; } 4 | 5 | .bui-form-title { 6 | font-size: 28px; 7 | color: #9ea7b4; 8 | padding-left: 30px; 9 | padding-top: 15px; 10 | padding-bottom: 15px; 11 | background-color: #f5f5f5; } 12 | 13 | .bui-form-group { 14 | border-top-width: 1px; 15 | border-top-color: #d7dde4; 16 | padding-top: 30px; 17 | padding-bottom: 30px; 18 | padding-left: 30px; 19 | padding-right: 30px; } 20 | 21 | .bui-form-group-center { 22 | justify-content: space-between; 23 | align-items: center; } 24 | 25 | .bui-form-group-start { 26 | justify-content: space-between; 27 | align-items: flex-start; } 28 | 29 | .form-label { 30 | font-size: 28px; 31 | margin-right: 25px; } 32 | 33 | .form-control { 34 | font-size: 30px; 35 | color: #657180; 36 | placeholder-color: #657180; } 37 | 38 | .multi-input { 39 | position: relative; 40 | top: -15px; } 41 | 42 | .height35 { 43 | height: 35px; } 44 | 45 | .help-block { 46 | color: #9ea7b4; 47 | font-size: 25px; } 48 | 49 | .select-text { 50 | color: #9ea7b4; 51 | font-size: 32px; } 52 | 53 | /*# sourceMappingURL=form.css.map */ 54 | -------------------------------------------------------------------------------- /docs/Modules/字体大小(bmFont).markdown: -------------------------------------------------------------------------------- 1 | ### bmFont 2 | 3 | > 修改字体大小功能,扩展了 WXTextComponent 功能,支持一键修改所有组件的字体大小,目前我们定义了三种字体大小,`NORM` 标准, `BIG` 大字体, `EXTRALARGE` 特大, 原理是在 css 定义的 fontSize 基础上,分别放大 1倍,1.15倍、1.3倍; 4 | 5 | **引用方式** 6 | 7 | ```js 8 | var bmFont = weex.requireModule('bmFont') 9 | ``` 10 | 11 | **API** 12 | 13 | * 改变字体大小:`changeFontSize(info,callback)` 14 | 15 | ```js 16 | bmFont.changeFontSize({ 17 | fontSize: 'BIG', // 'NORM' 标准, BIG 大, EXTRALARGE 特大 18 | }, function(resData){ 19 | //resdata 20 | // { 21 | // resCode: 0, 22 | // msg: '', 23 | // data: { 24 | // scale: '1||1.15||1.3', // 返回当前放大倍数 25 | // fontSize: 'BIG' // 'NORM' 标准, BIG 大, EXTRALARGE 特大 26 | // } 27 | // } 28 | }) 29 | ``` 30 | 31 | * 获取当前字体大小:`getFontSize(callback)` 32 | 33 | ```js 34 | bmFont.getFontSize(funtion(resData){ 35 | //resdata 36 | // { 37 | // resCode: 0, 38 | // msg: '', 39 | // data: { 40 | // scale: '1||1.15||1.3', // 返回当前放大倍数 41 | // fontSize: 'BIG' // 'NORM' 标准, BIG 大, EXTRALARGE 特大 42 | // } 43 | // } 44 | }) 45 | ``` 46 | 47 | 48 | 49 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/searchbar.scss: -------------------------------------------------------------------------------- 1 | @import "common"; 2 | //@import "buiweex"; 3 | 4 | 5 | .bui-searchbar{ 6 | padding-left: $nb20; 7 | padding-top: $nb15; 8 | padding-right: $nb20; 9 | padding-bottom: $nb15; 10 | } 11 | .bui-input{ 12 | background-color: $color_white; 13 | border-radius: $nb10; 14 | padding-left: $nb20; 15 | padding-top: $nb15; 16 | padding-right: $nb20; 17 | padding-bottom: $nb15; 18 | position: relative; 19 | } 20 | .bui-search-icon-box{ 21 | 22 | } 23 | .bui-search-icon-box-text{ 24 | color: $color_subtitle; 25 | font-size: $nb30; 26 | padding-left: $nb15; 27 | } 28 | .bui-search-input-text{ 29 | font-size: $nb30; 30 | height: $nb40; 31 | padding-left: $nb10; 32 | padding-right: $nb10; 33 | } 34 | .bui-search-search{ 35 | font-size: $nb30; 36 | padding-left: $nb15; 37 | padding-top: $nb15; 38 | padding-right: $nb10; 39 | padding-bottom: $nb15; 40 | } 41 | .bui-search-bg-default{ 42 | background-color: $color_default; 43 | } 44 | .bui-search-text-color-default{ 45 | color: $color_content; 46 | } 47 | .bui-search-bg-primary{ 48 | background-color: #4ca4fe; 49 | } 50 | .bui-search-text-color-primary{ 51 | color: $color_white; 52 | } 53 | 54 | 55 | 56 | 57 | -------------------------------------------------------------------------------- /docs/前端开发/widget-列表/图片-|-image.markdown: -------------------------------------------------------------------------------- 1 | ### image(图片相关) 2 | 3 | #### upload** ** 4 | 5 | > 上传图片。 6 | 7 | **请先配置项目根目录下 config.json 中 url.image 图片上传的地址。** 8 | 9 | 示例: 10 | 11 | ```js 12 | this.$image.upload({ 13 | maxCount: 9, // 一次最多可选择图片数量 最大支持9张 默认是1 14 | imageWidth: 1000, // 图片宽度(根据宽度按比例裁剪)可以不传默认为 800px 15 | allowCrop // 是否允许编辑(只有当 maxCount == 1时 此参数才会生效) 默认是false 16 | }) 17 | .then(resData => { 18 | console.log(resData.data) // [url1, url2...] 19 | }, error => { 20 | console.log(error) 21 | }) 22 | ``` 23 | 24 | Api: 25 | 26 | * **maxCount**(**Number**):一次最多可选择图片数量 最大支持`9`张 默认是`1`。 27 | * **imageWidth**(**Number**):图片宽度(根据宽度按比例裁剪)可以不传默认为 `800px` 默认是`0`。 28 | * **allowCrop**(**Boolean**):是否允许编辑(只有当 `maxCount == 1`时 此参数才会生效) 默认是 `false`。 29 | 30 | #### borwser 31 | 32 | > 调用图片浏览器,浏览图片。 33 | 34 | 示例: 35 | 36 | ```js 37 | this.$image.browser({ 38 | index: 2, // 所点击图片下标 39 | images: ['1','2','3'], // 图片的网络地址 40 | type: 'network' // 图片的来源,目前只支持网络图片 41 | }) 42 | ``` 43 | 44 | Api: 45 | 46 | * **index**(**Number**):所点击图片下标。 47 | * **images**(**Array**):图片的网络地址集合。 48 | * **type**(**String**):图片的来源,目前只支持网络图片。 49 | 50 | 51 | 52 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/tabbar.css.map: -------------------------------------------------------------------------------- 1 | { 2 | "version": 3, 3 | "mappings": "AAEA,mBAAoB;EAClB,KAAK,EAAE,KAAK;EACZ,IAAI,EAAE,CAAC;;AAGT,mBAAoB;EAClB,QAAQ,EAAE,QAAQ;EAClB,GAAG,EAAE,CAAC;EACN,IAAI,EAAE,CAAC;EACP,KAAK,EAAE,CAAC;EACR,MAAM,EAAE,CAAC;EACT,UAAU,EAAE,CAAC;EACb,aAAa,ECOP,KAAK;;ADJb,WAAY;EACV,cAAc,EAAE,GAAG;EACnB,MAAM,ECEA,KAAK;;ADCb,0BAA2B;EACzB,IAAI,EAAE,CAAC;EACP,cAAc,EAAE,MAAM;EACtB,WAAW,EAAE,MAAM;EACnB,eAAe,EAAE,MAAM;EACvB,gBAAgB,EAAE,GAAG;EACrB,gBAAgB,EAAE,KAAK;EACvB,gBAAgB,ECiBH,OAAO;;ADXtB,gBAAiB;EACf,UAAU,ECjCN,GAAG;EDkCP,UAAU,EAAE,MAAM;;AAKpB,qBAAsB;EACpB,MAAM,ECvBD,IAAI;EDwBT,mBAAmB,EAAE,GAAG;EACxB,mBAAmB,EAAE,KAAK;EAC1B,mBAAmB,ECAN,OAAO;;ADEtB,4BAA4B;EAC1B,QAAQ,EAAE,QAAQ;EAClB,GAAG,EAAE,CAAC;EACN,IAAI,EAAE,CAAC;EACP,KAAK,EAAE,CAAC;EACR,MAAM,EAAE,CAAC;EACT,UAAU,EClCL,IAAI;EDmCT,aAAa,EAAE,CAAC;;AAIlB,oBAAoB;EAClB,cAAc,EAAE,GAAG;EAEnB,WAAW,EAAE,MAAM;;AAErB,wBAAyB;EACvB,MAAM,EC7CD,IAAI;ED8CT,cAAc,EAAE,MAAM;EACtB,eAAe,EAAE,MAAM;EACvB,YAAY,ECnDP,IAAI;EDoDT,aAAa,ECpDR,IAAI;;ADuDX,QAAQ;EACN,QAAQ,EAAE,QAAQ;EAClB,MAAM,EAAE,CAAC;EACT,IAAI,EC7DC,IAAI;ED8DT,KAAK,EC9DA,IAAI;ED+DT,mBAAmB,EAAE,GAAG;EACxB,mBAAmB,EAAE,KAAK;;AAE5B,KAAM;EACJ,KAAK,ECrCS,OAAO;EDsCrB,UAAU,EAAE,MAAM", 4 | "sources": ["tabbar.scss","common.scss"], 5 | "names": [], 6 | "file": "tabbar.css" 7 | } -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/result/index.vue: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 13 | 14 | 24 | 25 | 52 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/common.scss: -------------------------------------------------------------------------------- 1 | @charset "UTF-8"; 2 | 3 | //距离 包括字体,空白(内外边距)常用的变量 4 | $nb5: 5px; 5 | $nb10: 10px; 6 | $nb15: 15px; 7 | $nb20: 20px; 8 | $nb24: 24px; 9 | $nb25: 25px; 10 | $nb28: 28px; 11 | $nb30: 30px; 12 | $nb32: 32px; 13 | $nb34: 34px; 14 | $nb35: 35px; 15 | $nb40: 40px; 16 | $nb45: 45px; 17 | $nb48: 48px; 18 | $nb50: 50px; 19 | $nb55: 55px; 20 | $nb60: 60px; 21 | $nb80: 80px; 22 | $nb100: 100px; 23 | $nb120: 120px; 24 | $nb140: 140px; 25 | 26 | //颜色变量 27 | //主色:其中primary用于normal,light-primary常用于hover,dark-primary常用于active 28 | $color_primary: #3399ff; 29 | $color_light_primary: #5da3f6; 30 | $color_dark_primary: #3091f2; 31 | //辅助色:辅助色是具有代表性的颜色,常用于信息提示,比如成功、警告和失败 32 | $color_info: #5BC0DE; 33 | $color_success: #00cc66; 34 | $color_success_active: #00c277; 35 | $color_warning: #ff9900; 36 | $color_warning_active: #f38c00; 37 | $color_danger: #ff4e24; 38 | $color_danger_active: #fa3300; 39 | $color_default:#f5f5f5; 40 | $color_default_active: #e5e3df; 41 | //中性色:常用于文本、背景、边框、阴影等,可以体现出页面的层次结构 42 | $color_black: #000000; 43 | $color_title: #464c5b; 44 | $color_content: #657180; 45 | $color_subtitle:#9ea7b4; 46 | $color_disabled: #d9e1ec; 47 | $color_border: #d7dde4; 48 | $color_divider: #e3e8ee; 49 | $color_background: #e8eaec; 50 | $color_white: #ffffff; 51 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/header.css.map: -------------------------------------------------------------------------------- 1 | { 2 | "version": 3, 3 | "mappings": "AAMA,eAAe;EACb,cAAc,EAAE,MAAM;EACtB,gBAAgB,EAAE,OAAO;;AAE3B,WAAW;EACT,IAAI,EAAE,CAAC;EACP,YAAY,ECNP,IAAI;EDOT,aAAa,ECPR,IAAI;EDQT,cAAc,EAAE,GAAG;EACnB,eAAe,EAAE,MAAM;EACvB,WAAW,EAAE,MAAM;EACnB,QAAQ,EAAE,QAAQ;;AAGpB,gBAAgB;EACd,cAAc,EAAE,GAAG;EACnB,WAAW,EAAE,MAAM;EACnB,eAAe,EAAE,MAAM;EACvB,QAAQ,EAAE,QAAQ;EAClB,IAAI,ECnBC,IAAI;EDoBT,GAAG,EAAE,CAAC;EACN,MAAM,EAAE,CAAC;;AAGX,iBAAiB;EACf,cAAc,EAAE,GAAG;EACnB,WAAW,EAAE,MAAM;EACnB,eAAe,EAAE,MAAM;EACvB,QAAQ,EAAE,QAAQ;EAClB,KAAK,EC7BA,IAAI;ED8BT,GAAG,EAAE,CAAC;EACN,MAAM,EAAE,CAAC;;AAGX,gBAAgB;EACd,eAAe,EAAE,MAAM;EACvB,IAAI,EAAE,CAAC;EACP,YAAY,ECvCP,IAAI;EDwCT,aAAa,ECxCR,IAAI;EDyCT,cAAc,EAAE,GAAG;;AAGrB,iBAAiB;EACf,SAAS,ECrCJ,IAAI;EDsCT,KAAK,ECDO,OAAO;EDEnB,UAAU,EAAE,MAAM;EAClB,YAAY,EC/CP,IAAI;EDgDT,aAAa,EChDR,IAAI;EDiDT,WAAW,ECjDN,IAAI;EDkDT,cAAc,EClDT,IAAI;EDmDT,KAAK,EAAC,CAAC;EACP,aAAa,EAAE,QAAQ;;AAEzB,gBAAgB;EACd,SAAS,ECjDJ,IAAI;EDkDT,KAAK,ECZO,OAAO;EDanB,UAAU,EAAE,MAAM;EAClB,KAAK,EAAC,CAAC;;AAGT,gBAAgB;EACd,KAAK,ECnDA,IAAI;EDoDT,MAAM,ECpDD,IAAI;;ADsDX,qBAAqB;EACnB,KAAK,ECvDA,IAAI;EDwDT,MAAM,ECxDD,IAAI;EDyDT,YAAY,EC/DP,IAAI;;ADkEX,MAAM;EACJ,YAAY,ECzEP,IAAI;;AD2EX,MAAM;EACJ,aAAa,EC5ER,IAAI", 4 | "sources": ["header.scss","common.scss"], 5 | "names": [], 6 | "file": "header.css" 7 | } -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/result/index.vue: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 13 | 14 | 24 | 25 | 52 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/actionsheet.css: -------------------------------------------------------------------------------- 1 | .bui-actionsheet-box { 2 | position: fixed; 3 | left: 0px; 4 | right: 0px; 5 | margin: 50px; 6 | margin-top: 0px; 7 | flex-direction: column; 8 | overflow: hidden; } 9 | 10 | .bui-actionsheet-top { 11 | border-radius: 10px; 12 | overflow: hidden; 13 | background-color: #ffffff; } 14 | 15 | .bui-actionsheet-bottom { 16 | margin-top: 15px; } 17 | 18 | .bui-actionsheet-title { 19 | padding: 30px; 20 | text-align: center; 21 | font-size: 28px; 22 | color: #9ea7b4; } 23 | 24 | .bui-actionsheet-content { 25 | flex-direction: column; 26 | flex: 1; } 27 | 28 | .bui-actionsheet-list { 29 | border-top-width: 1px; 30 | border-top-color: #d7dde4; 31 | padding: 30px; 32 | text-align: center; 33 | font-size: 34px; 34 | color: #3399ff; } 35 | 36 | .bui-actionsheet-list:active { 37 | background-color: #f5f5f5; } 38 | 39 | .bui-actionsheet-btn { 40 | font-size: 34px; 41 | color: #3399ff; 42 | font-weight: bold; 43 | background-color: #ffffff; 44 | padding: 30px; 45 | text-align: center; 46 | border-radius: 10px; } 47 | 48 | .bui-actionsheet-btn:active { 49 | background-color: #f5f5f5; } 50 | 51 | .bui-xxx { 52 | background-color: #3399ff; } 53 | 54 | /*# sourceMappingURL=actionsheet.css.map */ 55 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-lottery-rain/index.vue: -------------------------------------------------------------------------------- 1 | 2 | 12 | 13 | 23 | 24 | 48 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-loading/util.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Created by Tw93 on 2017/6/26. 3 | */ 4 | 5 | export function compareVersion (currVer = "0.0.0", promoteVer = "0.0.0") { 6 | if (currVer === promoteVer) return true; 7 | const currVerArr = currVer.split("."); 8 | const promoteVerArr = promoteVer.split("."); 9 | const len = Math.max(currVerArr.length, promoteVerArr.length); 10 | for (let i = 0; i < len; i++) { 11 | let proVal = ~~promoteVerArr[i]; 12 | let curVal = ~~currVerArr[i]; 13 | if (proVal < curVal) { 14 | return true; 15 | } else if (proVal > curVal) { 16 | return false; 17 | } 18 | } 19 | return false; 20 | } 21 | 22 | export function isTrip () { 23 | let { appName } = weex.config.env; 24 | return appName === 'LX'; 25 | } 26 | 27 | export function isAndroid () { 28 | let { platform } = weex.config.env; 29 | return platform.toLowerCase() === 'android'; 30 | } 31 | 32 | export function isWeb () { 33 | let { platform } = weex.config.env; 34 | return typeof(window) === 'object' && platform.toLowerCase() === 'web'; 35 | } 36 | 37 | export function getPageHeight () { 38 | const { env } = weex.config; 39 | const navHeight = isWeb() ? 0 : 130; 40 | return env.deviceHeight / env.deviceWidth * 750 - navHeight; 41 | } 42 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/form.scss: -------------------------------------------------------------------------------- 1 | @import "common"; 2 | 3 | .bui-form{ 4 | border-bottom-width: 1px; 5 | border-bottom-color: $color_border; 6 | } 7 | 8 | .bui-form-box{ 9 | 10 | } 11 | .bui-form-title{ 12 | font-size: $nb28; 13 | color: $color_subtitle; 14 | padding-left: $nb30; 15 | padding-top: $nb15; 16 | padding-bottom: $nb15; 17 | background-color: $color_default; 18 | } 19 | .bui-form-group{ 20 | border-top-width: 1px; 21 | border-top-color: $color_border; 22 | padding-top: $nb30; 23 | padding-bottom: $nb30; 24 | padding-left: $nb30; 25 | padding-right: $nb30; 26 | } 27 | .bui-form-group-center{ 28 | justify-content: space-between; 29 | align-items: center; 30 | } 31 | .bui-form-group-start{ 32 | justify-content: space-between; 33 | align-items: flex-start; 34 | } 35 | .form-label{ 36 | font-size: $nb28; 37 | margin-right: $nb25; 38 | } 39 | .form-control{ 40 | font-size: $nb30; 41 | color: $color_content; 42 | placeholder-color: $color_content; 43 | } 44 | .multi-input{ 45 | position: relative; 46 | top: -$nb15; 47 | } 48 | .height35{ 49 | height: $nb35; 50 | } 51 | .help-block{ 52 | color: $color_subtitle; 53 | font-size: $nb25; 54 | } 55 | .select-text{ 56 | color: $color_subtitle; 57 | font-size: $nb32; 58 | } 59 | .form-right{ 60 | 61 | } -------------------------------------------------------------------------------- /src/js/components/tabs/item.vue: -------------------------------------------------------------------------------- 1 | 8 | 9 | 38 | 39 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/components/bui-tabbar-scroll-item.vue: -------------------------------------------------------------------------------- 1 | 7 | 8 | 9 | 10 | 38 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-checkbox-list/index.vue: -------------------------------------------------------------------------------- 1 | 9 | 10 | 13 | 14 | 48 | -------------------------------------------------------------------------------- /src/js/widget/geo.js: -------------------------------------------------------------------------------- 1 | var modal = weex.requireModule('bmModal'), 2 | geolocation = weex.requireModule('bmGeolocation') 3 | 4 | import isFunction from 'lodash/isFunction' 5 | 6 | var Geolocation = Object.create(null) 7 | 8 | Geolocation.install = (Vue) => { 9 | Vue.prototype.$geo = { 10 | get(callback){ 11 | return new Promise((resolve, reject) => { 12 | geolocation.getGeolocation((resData) => { 13 | if(!resData){ 14 | resData = { 15 | resCode: -1, 16 | msg: '获取信息失败,请重试', 17 | data: {} 18 | } 19 | } 20 | if(isFunction(callback)){ 21 | callback.call(this, resData) 22 | } 23 | if(resData && resData.resCode == 0){ 24 | resolve(resData) 25 | }else{ 26 | resData.msg && modal.alert({ 27 | message: resData.msg, 28 | okTitle: '确定' 29 | }) 30 | reject(resData) 31 | } 32 | }) 33 | }) 34 | } 35 | } 36 | } 37 | 38 | Vue.use(Geolocation) 39 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/button.css: -------------------------------------------------------------------------------- 1 | .btn { 2 | height: 100px; 3 | line-height: 100px; 4 | font-size: 34px; 5 | text-align: center; 6 | padding-left: 20px; 7 | padding-right: 20px; } 8 | 9 | .btn-primary { 10 | background-color: #3399ff; 11 | color: #ffffff; } 12 | 13 | .btn-primary:active { 14 | background-color: #3091f2; } 15 | 16 | .btn-success { 17 | background-color: #00cc66; 18 | color: #ffffff; } 19 | 20 | .btn-success:active { 21 | background-color: #00c277; } 22 | 23 | .btn-info { 24 | background-color: #5da3f6; } 25 | 26 | .btn-info:active { 27 | background-color: #3399ff; } 28 | 29 | .btn-warning { 30 | background-color: #ff9900; 31 | color: #ffffff; } 32 | 33 | .btn-warning:active { 34 | background-color: #f38c00; } 35 | 36 | .btn-danger { 37 | background-color: #ff4e24; 38 | color: #ffffff; } 39 | 40 | .btn-danger:active { 41 | background-color: #fa3300; } 42 | 43 | .btn-disabled { 44 | background-color: #d9e1ec; 45 | border-width: 1px; 46 | border-style: solid; 47 | border-color: #e5e3df; 48 | color: #9ea7b4; } 49 | 50 | .btn-default { 51 | background-color: #f5f5f5; 52 | border-width: 1px; 53 | border-style: solid; 54 | border-color: #e5e3df; } 55 | 56 | .btn-default:active { 57 | background-color: #e5e3df; } 58 | 59 | /*# sourceMappingURL=button.css.map */ 60 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/css/dialog.css: -------------------------------------------------------------------------------- 1 | .bui-dialog-mask { 2 | background-color: #000000; 3 | position: absolute; 4 | top: 0; 5 | bottom: 0; 6 | left: 0; 7 | right: 0; 8 | flex: 1; 9 | opacity: 0.7; } 10 | 11 | .bui-dialog { 12 | position: fixed; 13 | background-color: #ffffff; 14 | border-radius: 10px; 15 | height: 400px; 16 | top: 300px; 17 | left: 50px; 18 | right: 50px; 19 | flex: 1; } 20 | 21 | .bui-dialog-title { 22 | justify-content: center; 23 | height: 80px; 24 | padding-left: 30px; 25 | padding-right: 30px; } 26 | 27 | .dialog-title-text { 28 | color: #000000; 29 | font-size: 32px; } 30 | 31 | .bui-dialog-content { 32 | height: 220px; 33 | padding-left: 30px; 34 | padding-right: 30px; 35 | padding-bottom: 30px; } 36 | 37 | .bui-dialog-footer { 38 | flex-direction: row; 39 | align-items: center; 40 | justify-content: center; 41 | height: 80px; 42 | border-top-width: 1px; 43 | border-top-style: solid; 44 | border-top-color: #d7dde4; } 45 | 46 | .dialog-action-text { 47 | flex: 1; 48 | text-align: center; 49 | font-size: 32px; 50 | color: #3399ff; 51 | border-right-width: 1px; 52 | border-right-style: solid; 53 | border-right-color: #d7dde4; } 54 | 55 | .dialog-action-text:active { 56 | color: #000000; } 57 | 58 | /*# sourceMappingURL=dialog.css.map */ 59 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab2/header.vue: -------------------------------------------------------------------------------- 1 | 11 | 12 | 43 | 44 | 47 | -------------------------------------------------------------------------------- /docs/Modules/相关工具(bmTool).markdown: -------------------------------------------------------------------------------- 1 | ### bmTool 2 | 3 | > 一些方法 4 | 5 | **引用方式** 6 | 7 | ```js 8 | var tool = weex.requireModule('bmTool') 9 | ``` 10 | 11 | **API** 12 | 13 | * 辞退键盘: `resignKeyboard(callback)` 14 | 15 | ```js 16 | tool.resignKeyboard(function(resData){ // 回调 17 | // 结果的回调 18 | // resData = { 19 | // resCode: 0 || 9, // 是否成功 20 | // msg: nil, 21 | // data: nil 22 | // } 23 | }); 24 | ``` 25 | 26 | * 判断是否安装微信:`isInstallWXApp(callback)` 27 | 28 | ```js 29 | tool.isInstallWXApp(function(resData){ // 回调 30 | // 结果的回调 31 | // resData 32 | // { 33 | // resCode: 0 || 9, // 0成功 9失败 34 | // msg: nil, 35 | // data: nil 36 | // } 37 | }); 38 | ``` 39 | 40 | * 获取 个推SDK的 cid:`getCid(callback)` 41 | 42 | ```js 43 | tool.getCid(function(resData){ 44 | // 结果的回调 45 | // resData = { 46 | // resCode: 0 || 9, // 是否成功 47 | // msg: nil, 48 | // data: {cid:'4701510e9b7753c98077d87661aaxxs'} 如果获取不到 整个data 字段是nil 49 | // } 50 | }); 51 | ``` 52 | 53 | * 赋值内容到剪切板:`copyString(string,callback)` 54 | 55 | ```js 56 | tool.copyString('复制的内容', function(resData){ 57 | // 成功的回调 58 | }) 59 | ``` 60 | 61 | * 添加全局水印\(在 Window 上添加\):`addWatermark:(String)` 62 | 63 | ```js 64 | tools.addWatermark('我是水印') 65 | ``` 66 | 67 | 68 | 69 | -------------------------------------------------------------------------------- /config/eros.native.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | "appName": "eros-demo", 3 | "appBoard": '/config/index.js', 4 | "version": { 5 | "android": "1.0.0", 6 | "iOS": "1.0.0" 7 | }, 8 | "page": { 9 | "homePage": "/pages/eros-demos/index.js", 10 | "mediatorPage": "/mediator/index.js", 11 | "navBarColor": "#ffffff", 12 | "navItemColor": "#333" 13 | }, 14 | "url": { 15 | "request": "http://devel.skylinuav.com:8005", 16 | "jsServer": "http://app.weex-eros.com:8899", 17 | 18 | "image": "https://lev-inf.benmu-health.com/test/xxx", 19 | "bundleUpdate": "http://localhosts:3001/app/check" 20 | }, 21 | "zipFolder": { 22 | "iOS": "/ios/WeexEros/WeexEros", 23 | "android": "/android/WeexFrameworkWrapper/app/src/main/assets" 24 | }, 25 | "getui": { 26 | "enabled": "false", 27 | "appId": "", 28 | "appKey": "", 29 | "appSecret": "" 30 | }, 31 | "umeng": { 32 | "enabled": "false", 33 | "iOSAppKey": "", 34 | "androidAppKey": "" 35 | }, 36 | "wechat": { 37 | "enabled": "false", 38 | "appId": "", 39 | "appSecret": "" 40 | }, 41 | "amap": { 42 | "enabled": "true", 43 | "iOSAppKey": "623c0396a9b879461c971a14baa678fb", 44 | "androidAppKey": "" 45 | } 46 | } -------------------------------------------------------------------------------- /docs/Modules/事件中介者(bmEvents).markdown: -------------------------------------------------------------------------------- 1 | ### bmEvents 2 | 3 | > 事件通知 4 | 5 | **引用方式** 6 | 7 | ```js 8 | var event = weex.requireModule('bmEvents') 9 | ``` 10 | 11 | **示例** 12 | 13 | ```js 14 | //注册事件,可多次响应 15 | event.on('eventName',function(params){ 16 | // params 为触发该事件所传的参数 17 | }); 18 | 19 | //注册事件,只响应一次 20 | event.once('eventName',function(params){ 21 | // params 为触发该事件所传的参数 22 | }); 23 | 24 | //触发事件 25 | event.emit('eventName',params); 26 | 27 | //取消事件 28 | event.off('eventName',function(result){ 29 | console.log("取消该事件"); 30 | }); 31 | 32 | //取消全部事件 33 | event.offall(); 34 | ``` 35 | 36 | ### globalEvent (扩展) 37 | 38 | > globalEvent 是用于监听持久性事件的,我们添加了原生页面生命周期事件 39 | > 40 | > API `addEventListener(String eventName, String callback)` 41 | > 42 | > 事件(eventName):`viewWillAppear`、`viewDidAppear`、`viewWillDisappear`、`viewDidDisappear`,分别对应 页面将要展示、页面已经展示、页面即将消失、页面已经消失; 43 | > 44 | > 返回参数 type(callback):`open`、`back`、`refresh`,分别对应 页面首次打开,返回页面,刷新页面 45 | 46 | ```js 47 | // 示例:监听 viewWillAppear 事件 48 | var globalEvent = weex.requireModule('globalEvent'); 49 | globalEvent.addEventListener("viewWillAppear", function(type) { 50 | if (type === 'open') { 51 | // 首次打开页面调用 52 | } else if (type === 'back') { 53 | // 返回页面调用 54 | } else if (type === 'refresh') { 55 | // 刷新页面调用 56 | } 57 | }) 58 | ``` 59 | 60 | 61 | 62 | 63 | 64 | 65 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-rich-text/wxc-rich-text-link.vue: -------------------------------------------------------------------------------- 1 | 2 | 11 | 12 | 51 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/components/bui-load.vue: -------------------------------------------------------------------------------- 1 | 10 | 11 | 46 | 47 | 48 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-checkbox/checkboxList.vue: -------------------------------------------------------------------------------- 1 | 2 | 10 | 11 | 14 | 15 | 49 | -------------------------------------------------------------------------------- /src/js/components/__eros__/bui/js/animate.js: -------------------------------------------------------------------------------- 1 | /** 2 | * 动画常用的方法 3 | */ 4 | var animation = weex.requireModule('animation'); 5 | 6 | var common = { 7 | ref: '', 8 | init: function (id) { 9 | this.ref = id; 10 | return this; 11 | }, 12 | "left": function (x) { 13 | console.log(this.ref); 14 | var transform = 'translate('+x+', 0)' || 'translate(0, 0)'; 15 | animation.transition(this.ref, { 16 | styles: { 17 | transform: transform, 18 | transformOrigin: 'center center' 19 | }, 20 | duration: 800, 21 | timingFunction: 'ease', 22 | delay: 0 23 | }, function () { 24 | console.log(x); 25 | }); 26 | return this; 27 | 28 | }, 29 | right: function (x) { 30 | var rrr = this.ref; 31 | rrr = '8888' 32 | console.log(rrr); 33 | var transform = 'translate('+x+', 0)' || 'translate(0, 0)'; 34 | animation.transition(this.ref, { 35 | styles: { 36 | transform: transform, 37 | transformOrigin: 'center center' 38 | }, 39 | duration: 800, 40 | timingFunction: 'ease', 41 | delay: 0 42 | }, function () { 43 | console.log(x); 44 | }); 45 | return this; 46 | } 47 | 48 | 49 | } 50 | 51 | module.exports = common; -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/tag/index.vue: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 34 | 35 | 51 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab4/demo/index.vue: -------------------------------------------------------------------------------- 1 | 11 | 47 | 48 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/tag/index.vue: -------------------------------------------------------------------------------- 1 | 2 | 17 | 18 | 34 | 35 | 51 | -------------------------------------------------------------------------------- /src/js/mediator/index.vue: -------------------------------------------------------------------------------- 1 | /* 2 | * @Author: Zero 3 | * @Date: 2017-10-10 11:12:40 4 | * @Last Modified by: Zero 5 | * @Last Modified time: 2017-11-10 16:26:19 6 | */ 7 | // 这个vue的实例我们在app启动的时候就执行并常驻app内存,在app关闭时候销毁,所以data中的数据每次重启都会被初始化 8 | // 而我们在app运行期间都可以任意改变data中的数据,然后推送给订阅者 9 | 10 | // 如果想要持久化存储,可以配合storage来完成,每次启动app时候都从本地取数据,当data改变的时候异步的更新一下即可 11 | // 住: 不能再app退出的时候来持久化存储,退出时间很短,无法保证存储成功 12 | 13 | // 我们不建议在这里存储大量的数据 这里仅仅希望用作一个中介者 来提供给其他页面实例来通信 他无法替代storage 读取速度也远远慢与storage 14 | 17 | 18 | 49 | -------------------------------------------------------------------------------- /src/js/widget/events.js: -------------------------------------------------------------------------------- 1 | /** 2 | * @Author: songqi 3 | * @Date: 2017-02-27 4 | * @Last modified by: songqi 5 | * @Last modified time: 2017-04-10 6 | */ 7 | 8 | import _isArray from 'lodash/isArray' 9 | 10 | var event = weex.requireModule('bmEvents'), 11 | globalEvent = weex.requireModule('globalEvent') 12 | 13 | const GlobalEvent = Object.create(null) 14 | const GLOBALEVENT = Object.create(null) 15 | 16 | // app 被放到后台 appWillResignActive 17 | globalEvent.addEventListener("appDeactive", function(options) { 18 | _isArray(GLOBALEVENT['appDeactive']) && GLOBALEVENT['appDeactive'].map((item) => { 19 | item(options) 20 | }) 21 | }) 22 | 23 | // app 从后台唤起 appDidBecomeActive 24 | globalEvent.addEventListener("appActive", function(options) { 25 | _isArray(GLOBALEVENT['appActive']) && GLOBALEVENT['appActive'].map((item) => { 26 | item(options) 27 | }) 28 | }) 29 | 30 | GlobalEvent.install = (Vue, options) => { 31 | Vue.mixin({ 32 | beforeCreate() { 33 | if (this.$options.globalEvent) { 34 | var ev = this.$options.globalEvent 35 | for (var i in ev) { 36 | if (!GLOBALEVENT[i]) { 37 | GLOBALEVENT[i] = [] 38 | } 39 | GLOBALEVENT[i].push(ev[i].bind(this)) 40 | } 41 | } 42 | } 43 | }) 44 | Vue.prototype.$event = event 45 | } 46 | 47 | Vue.use(GlobalEvent) -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/_mods/set-nav.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Created by Tw93 on 2017/7/26. 3 | * demo设置标题和右上角按钮 4 | */ 5 | const navigationBar = weex.requireModule('navigationBar'); 6 | const navigator = weex.requireModule('navigator') 7 | 8 | export function setTitle (title) { 9 | if (navigationBar && navigationBar.setTitle) { 10 | const NOOP = () => { 11 | }; 12 | navigationBar.setTitle({ 13 | title, 14 | }, NOOP, NOOP); 15 | 16 | const CALLBACK = (event) => { 17 | if (event.index != undefined) { 18 | navigator.push({ 19 | url: 'https://h5.m.taobao.com/trip/weex-ui/index.html?_wx_tpl=https%3A%2F%2Fh5.m.taobao.com%2Ftrip%2Fweex-ui%2Fdemo%2Findex.native-min.js', 20 | animated: true 21 | }, NOOP) 22 | } 23 | }; 24 | navigationBar.setRightItem({ 25 | items: [{ 26 | icon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAABCUExURUxpcTMzMzMzMzAwMDIyMjIyMjExMTAwMDIyMjIyMjIyMjIyMjIyMjIyMjIyMjMzMzIyMjAwMDMzMzMzMzIyMjMzMxR9TlYAAAAVdFJOUwCgvzCfgD9AYMCQcO+P389/IG9Q0HT9VioAAADRSURBVEjH7ZXrDoMgDEZhVgFvu/L+r7pZgQlSLcuSJYvfHwKcU5HUKMSRj6P7Xhfx9hVdyBcYjmcbyEvJNmZeCK7hea5xCTzPgAXPMZCv3/M9A1b7aAx83hnA54XoSAOI82rCAPL98gZs3EfOgM37Wxuwc9+pgTw0V4qvGoiM1vd/l+fDfusW/NyOeaEPgFswyUI1nObckoLGl1BTHkEYbXzGqYERiR9sgmCTknEHf0mo5+EQfiM0GOx1HM5+TglkcoIsFe5bgsp+iIpM9V+//CcugShOKAURTAAAAABJRU5ErkJggg==' 27 | }] 28 | }, CALLBACK, NOOP); 29 | } 30 | } 31 | 32 | -------------------------------------------------------------------------------- /docs/iOS-开发/图片配置相关.markdown: -------------------------------------------------------------------------------- 1 | # 图片配置 2 | 3 | 此部分教程主要说明如何修改 App logo、启动图(Launchimage)、以及工程中一些用到的默认图片; 4 | 5 | ### 首先打开 iOS 工程 6 | 7 | cd 到 ios/WeexEros 目录下,执行命令:`$ open WeexEros.xcworkspace open` 然后会调用 Xcode 打开工程,或者到目录下直接双击 `WeexEros.xcworkspace` 8 | 9 | #### 找到 Assets.xcassets 文件 10 | 11 | 工程配置的图片都在 Assets.xcassets 中,打开后是下面这个样子 12 | 13 | ![](https://img.benmu-health.com/gitbook/weexErosimg.png) 14 | 15 | #### 说明 16 | 17 | > 1x 图片是给非Retina屏用的,iPhone 4 之前的机型,iPhone3GS 这部分机型直接无视,所以不需要设置图片 18 | > 19 | > 2x 图片是给 Retina 屏用的,iPhone 4(含)之后的机型 20 | > 21 | > 3x 图是专为 5.5 寸机型提供的,但不是必须的,如果 3x图没有系统会使用 2x 的图片 22 | 23 | ``` 24 | |- AppIcon // logo 图片 25 | |- LaunchImage // 启动页图片 26 | |- Navbar 27 | |- NavBar_BackIcon // 导航栏默认的返回按钮图片 28 | |- NavBar_BackItemIcon // 自定义的返回按钮图片 29 | |- Other 30 | |- image_placeholder // 标签 站位图片,图片加载失败会显示这个站位图 31 | |- pullLoadding // 下拉刷新动画 32 | |- Scan 33 | |- Scan_line // 扫一扫的线 34 | |- Scan_pick_bg // 扫一扫中的框 35 | ``` 36 | 37 | #### 替换方法 38 | 39 | > 以上图片都可以替换为自己的,考虑到一些开发人员没有 iOS 开发经验,以免出错,请按以下教程来操作 40 | 41 | 以 AppIcon为例 42 | 43 | ![](https://img.benmu-health.com/gitbook/appicon.png) 44 | 45 | 选中 AppIcon 右键 -> Show in Finder 46 | 47 | ![](https://img.benmu-health.com/gitbook/appicon1.png) 48 | 49 | 打开 AppIcon.appiconset 文件夹 50 | 51 | ![](https://img.benmu-health.com/gitbook/AppIcon2.png) 52 | 53 | 注意图片尺寸,还有命名规范要与之前的保持一致,然后将新的图片直接覆盖就可以了; 54 | 55 | 其他图片的替换方式一样; 56 | 57 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/example/_mods/set-nav.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Created by Tw93 on 2017/7/26. 3 | * demo设置标题和右上角按钮 4 | */ 5 | const navigationBar = weex.requireModule('navigationBar'); 6 | const navigator = weex.requireModule('navigator') 7 | 8 | export function setTitle (title) { 9 | if (navigationBar && navigationBar.setTitle) { 10 | const NOOP = () => { 11 | }; 12 | navigationBar.setTitle({ 13 | title, 14 | }, NOOP, NOOP); 15 | 16 | const CALLBACK = (event) => { 17 | if (event.index != undefined) { 18 | navigator.push({ 19 | url: 'https://h5.m.taobao.com/trip/weex-ui/index.html?_wx_tpl=https%3A%2F%2Fh5.m.taobao.com%2Ftrip%2Fweex-ui%2Fdemo%2Findex.native-min.js', 20 | animated: true 21 | }, NOOP) 22 | } 23 | }; 24 | navigationBar.setRightItem({ 25 | items: [{ 26 | icon: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAABCUExURUxpcTMzMzMzMzAwMDIyMjIyMjExMTAwMDIyMjIyMjIyMjIyMjIyMjIyMjIyMjMzMzIyMjAwMDMzMzMzMzIyMjMzMxR9TlYAAAAVdFJOUwCgvzCfgD9AYMCQcO+P389/IG9Q0HT9VioAAADRSURBVEjH7ZXrDoMgDEZhVgFvu/L+r7pZgQlSLcuSJYvfHwKcU5HUKMSRj6P7Xhfx9hVdyBcYjmcbyEvJNmZeCK7hea5xCTzPgAXPMZCv3/M9A1b7aAx83hnA54XoSAOI82rCAPL98gZs3EfOgM37Wxuwc9+pgTw0V4qvGoiM1vd/l+fDfusW/NyOeaEPgFswyUI1nObckoLGl1BTHkEYbXzGqYERiR9sgmCTknEHf0mo5+EQfiM0GOx1HM5+TglkcoIsFe5bgsp+iIpM9V+//CcugShOKAURTAAAAABJRU5ErkJggg==' 27 | }] 28 | }, CALLBACK, NOOP); 29 | } 30 | } 31 | 32 | -------------------------------------------------------------------------------- /src/js/components/__eros__/weex-ui/packages/wxc-progress/index.vue: -------------------------------------------------------------------------------- 1 | 2 | 9 | 10 | 21 | 22 | 62 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/cell/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Weex Vue Component Demo 6 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 17 | 27 | 28 | 29 |
30 | 31 | 32 | 33 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/mask/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Weex Vue Component Demo 6 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 17 | 27 | 28 | 29 |
30 | 31 | 32 | 33 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/tag/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Weex Vue Component Demo 6 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 17 | 27 | 28 | 29 |
30 | 31 | 32 | 33 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/button/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Weex Vue Component Demo 6 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 17 | 27 | 28 | 29 |
30 | 31 | 32 | 33 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/checkbox/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Weex Vue Component Demo 6 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 17 | 27 | 28 | 29 |
30 | 31 | 32 | 33 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/countdown/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Weex Vue Component Demo 6 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 17 | 27 | 28 | 29 |
30 | 31 | 32 | 33 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/dialog/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Weex Vue Component Demo 6 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 17 | 27 | 28 | 29 |
30 | 31 | 32 | 33 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/ep-slider/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Weex Vue Component Demo 6 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 17 | 27 | 28 | 29 |
30 | 31 | 32 | 33 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/indexlist/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Weex Vue Component Demo 6 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 17 | 27 | 28 | 29 |
30 | 31 | 32 | 33 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/lightbox/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Weex Vue Component Demo 6 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 17 | 27 | 28 | 29 |
30 | 31 | 32 | 33 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/loading/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Weex Vue Component Demo 6 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 17 | 27 | 28 | 29 |
30 | 31 | 32 | 33 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/minibar/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Weex Vue Component Demo 6 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 17 | 27 | 28 | 29 |
30 | 31 | 32 | 33 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/noticebar/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Weex Vue Component Demo 6 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 17 | 27 | 28 | 29 |
30 | 31 | 32 | 33 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/overlay/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Weex Vue Component Demo 6 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 17 | 27 | 28 | 29 |
30 | 31 | 32 | 33 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/popup/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Weex Vue Component Demo 6 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 17 | 27 | 28 | 29 |
30 | 31 | 32 | 33 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /src/js/pages/eros-demos/tab1/progress/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Weex Vue Component Demo 6 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 17 | 27 | 28 | 29 |
30 | 31 | 32 | 33 | 34 | 35 | 36 | --------------------------------------------------------------------------------