提交 237456bc 编写于 作者: DCloud-WZF's avatar DCloud-WZF 💬

feat(components): 通用属性 通用事件

上级 7cd60733
{
"pages": [
//pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages
{
"path": "pages/tabBar/component",
"style": {
"navigationBarTitleText": "内置组件",
"backgroundColor": "#F8F8F8"
}
},
{
"path": "pages/component/view/view",
"style": {
"navigationBarTitleText": "view"
}
},
{
"path": "pages/component/scroll-view/scroll-view",
"style": {
"navigationBarTitleText": "scroll-view"
}
},
{
"path": "pages/component/text/text",
"style": {
"navigationBarTitleText": "text"
}
},
{
"path": "pages/component/text/text-props",
"style": {
"navigationBarTitleText": "text-props"
}
},
{
"path": "pages/component/progress/progress",
"style": {
"navigationBarTitleText": "progress"
}
},
{
"path": "pages/component/button/button",
"style": {
"navigationBarTitleText": "button"
}
},
{
"path": "pages/component/radio/radio",
"style": {
"navigationBarTitleText": "radio"
}
},
{
"path": "pages/component/checkbox/checkbox",
"style": {
"navigationBarTitleText": "checkbox"
}
},
{
"path": "pages/component/input/input",
"style": {
"navigationBarTitleText": "input"
}
},
{
"path": "pages/component/textarea/textarea",
"style": {
"navigationBarTitleText": "textarea"
}
},
{
"path": "pages/component/slider/slider",
"style": {
"navigationBarTitleText": "slider"
}
},
{
"path": "pages/component/picker-view/picker-view",
"style": {
"navigationBarTitleText": "picker-view"
}
},
{
"path": "pages/component/slider-100/slider-100",
"style": {
"navigationBarTitleText": "slider x 100"
}
},
{
"path": "pages/component/switch/switch",
"style": {
"navigationBarTitleText": "switch"
}
},
{
"path": "pages/component/swiper/swiper",
"style": {
"navigationBarTitleText": "swiper"
}
},
{
"path": "pages/component/image/image",
"style": {
"navigationBarTitleText": "image"
}
},
{
"path": "pages/component/image/image-format",
"style": {
"navigationBarTitleText": "image-format"
}
},
{
"path": "pages/component/image/image-mode",
"style": {
"navigationBarTitleText": "image-mode"
}
},
{
"path": "pages/component/image/image-path",
"style": {
"navigationBarTitleText": "image-path"
}
},
{
"path": "pages/component/image/image-large",
"style": {
"navigationBarTitleText": "大图测试"
}
},
{
"path": "pages/component/video/video",
"style": {
"navigationBarTitleText": "video"
}
},
{
"path": "pages/component/web-view/web-view",
"style": {
"navigationBarTitleText": "web-view"
}
},
{
"path": "pages/component/web-view-local/web-view-local",
"style": {
"navigationBarTitleText": "web-view-local"
}
},
{
"path": "pages/component/navigator/navigator",
"style": {
"navigationBarTitleText": "navigator"
}
},
{
"path": "pages/component/navigator/navigate",
"style": {
"navigationBarTitleText": "navigatePage"
}
},
{
"path": "pages/component/navigator/redirect",
"style": {
"navigationBarTitleText": "redirectPage"
}
},
{
"path": "pages/component/general-event/general-event",
"style": {
"navigationBarTitleText": "general-event"
}
},
{
"path": "pages/tabBar/API",
"style": {
"navigationBarTitleText": "接口",
"backgroundColor": "#F8F8F8"
}
},
{
"path": "pages/API/get-app/get-app",
"style": {
"navigationBarTitleText": "getApp"
}
},
{
"path": "pages/API/exit/exit",
"style": {
"navigationBarTitleText": "exit"
}
},
{
"path": "pages/API/get-current-pages/get-current-pages",
"style": {
"navigationBarTitleText": "getCurrentPages"
}
},
{
"path": "pages/API/get-launch-options-sync/get-launch-options-sync",
"style": {
"navigationBarTitleText": "getLaunchOptionsSync"
}
},
{
"path": "pages/API/navigator/navigator",
"style": {
"navigationBarTitleText": "页面跳转"
}
},
{
"path": "pages/API/set-navigation-bar-color/set-navigation-bar-color",
"style": {
"navigationBarTitleText": "设置导航条颜色"
}
},
{
"path": "pages/API/navigator/new-page/new-page-1",
"style": {
"navigationBarTitleText": "新页面-1"
}
},
{
"path": "pages/API/navigator/new-page/new-page-2",
"style": {
"navigationBarTitleText": "新页面-2",
"enablePullDownRefresh": true
}
},
{
"path": "pages/API/pull-down-refresh/pull-down-refresh",
"style": {
"navigationBarTitleText": "页面级下拉刷新",
"enablePullDownRefresh": true
}
},
{
"path": "pages/API/nodes-info/nodes-info",
"style": {
"navigationBarTitleText": "查询节点信息的对象"
}
},
{
"path": "pages/API/storage/storage",
"style": {
"navigationBarTitleText": "数据存储"
}
},
{
"path": "pages/API/action-sheet/action-sheet",
"style": {
"navigationBarTitleText": "操作菜单"
}
},
{
"path": "pages/API/modal/modal",
"style": {
"navigationBarTitleText": "模态弹窗"
}
},
{
"path": "pages/API/show-loading/show-loading",
"style": {
"navigationBarTitleText": "加载提示框"
}
},
{
"path": "pages/API/toast/toast",
"style": {
"navigationBarTitleText": "消息提示框"
}
},
{
"path": "pages/API/load-font-face/load-font-face",
"style": {
"navigationBarTitleText": "动态加载字体"
}
},
{
"path": "pages/API/load-font-face/load-font-face-child",
"style": {
"navigationBarTitleText": "动态加载字体-子页面"
}
},
{
"path": "pages/API/get-location/get-location",
"style": {
"navigationBarTitleText": "获取定位"
}
},
{
"path": "pages/tabBar/CSS",
"style": {
"navigationBarTitleText": "CSS",
"backgroundColor": "#F8F8F8"
}
},
{
"path": "pages/CSS/background/background-color",
"style": {
"navigationBarTitleText": "background-color"
}
},
{
"path": "pages/CSS/background/background-image",
"style": {
"navigationBarTitleText": "background-image"
}
},
{
"path": "pages/CSS/border/border-color",
"style": {
"navigationBarTitleText": "border-color"
}
},
{
"path": "pages/CSS/border/border-radius",
"style": {
"navigationBarTitleText": "border-radius"
}
},
{
"path": "pages/CSS/border/border-style",
"style": {
"navigationBarTitleText": "border-style"
}
},
{
"path": "pages/CSS/border/border-width",
"style": {
"navigationBarTitleText": "border-width"
}
},
{
"path": "pages/CSS/border/border",
"style": {
"navigationBarTitleText": "border"
}
},
{
"path": "pages/CSS/box-shadow/box-shadow",
"style": {
"navigationBarTitleText": "box-shadow"
}
},
{
"path": "pages/CSS/flex/align-content",
"style": {
"navigationBarTitleText": "align-content"
}
},
{
"path": "pages/CSS/flex/align-items",
"style": {
"navigationBarTitleText": "align-items"
}
},
{
"path": "pages/CSS/flex/flex-basis",
"style": {
"navigationBarTitleText": "flex-basis"
}
},
{
"path": "pages/CSS/flex/flex-direction",
"style": {
"navigationBarTitleText": "flex-direction"
}
},
{
"path": "pages/CSS/flex/flex-flow",
"style": {
"navigationBarTitleText": "flex-flow"
}
},
{
"path": "pages/CSS/flex/flex-grow",
"style": {
"navigationBarTitleText": "flex-grow"
}
},
{
"path": "pages/CSS/flex/flex-shrink",
"style": {
"navigationBarTitleText": "flex-shrink"
}
},
{
"path": "pages/CSS/flex/flex",
"style": {
"navigationBarTitleText": "flex"
}
},
{
"path": "pages/CSS/flex/justify-content",
"style": {
"navigationBarTitleText": "justify-content"
}
},
{
"path": "pages/CSS/layout/height",
"style": {
"navigationBarTitleText": "height"
}
},
{
"path": "pages/CSS/layout/max-height",
"style": {
"navigationBarTitleText": "max-height"
}
},
{
"path": "pages/CSS/layout/max-width",
"style": {
"navigationBarTitleText": "max-width"
}
},
{
"path": "pages/CSS/layout/min-height",
"style": {
"navigationBarTitleText": "min-height"
}
},
{
"path": "pages/CSS/layout/min-width",
"style": {
"navigationBarTitleText": "min-width"
}
},
{
"path": "pages/CSS/layout/position",
"style": {
"navigationBarTitleText": "position"
}
},
{
"path": "pages/CSS/layout/width",
"style": {
"navigationBarTitleText": "width"
}
},
{
"path": "pages/CSS/layout/visibility",
"style": {
"navigationBarTitleText": "visibility"
}
},
{
"path": "pages/CSS/margin/margin-bottom",
"style": {
"navigationBarTitleText": "margin-bottom"
}
},
{
"path": "pages/CSS/margin/margin-left",
"style": {
"navigationBarTitleText": "margin-left"
}
},
{
"path": "pages/CSS/margin/margin-right",
"style": {
"navigationBarTitleText": "margin-right"
}
},
{
"path": "pages/CSS/margin/margin-top",
"style": {
"navigationBarTitleText": "margin-top"
}
},
{
"path": "pages/CSS/margin/margin",
"style": {
"navigationBarTitleText": "margin"
}
},
{
"path": "pages/CSS/padding/padding-bottom",
"style": {
"navigationBarTitleText": "padding-bottom"
}
},
{
"path": "pages/CSS/padding/padding-left",
"style": {
"navigationBarTitleText": "padding-left"
}
},
{
"path": "pages/CSS/padding/padding-right",
"style": {
"navigationBarTitleText": "padding-right"
}
},
{
"path": "pages/CSS/padding/padding-top",
"style": {
"navigationBarTitleText": "padding-top"
}
},
{
"path": "pages/CSS/padding/padding",
"style": {
"navigationBarTitleText": "padding"
}
},
{
"path": "pages/CSS/text/color",
"style": {
"navigationBarTitleText": "color"
}
},
{
"path": "pages/CSS/text/font-family",
"style": {
"navigationBarTitleText": "font-family"
}
},
{
"path": "pages/CSS/text/font-size",
"style": {
"navigationBarTitleText": "font-size"
}
},
{
"path": "pages/CSS/text/font-style",
"style": {
"navigationBarTitleText": "font-style"
}
},
{
"path": "pages/CSS/text/font-weight",
"style": {
"navigationBarTitleText": "font-weight"
}
},
{
"path": "pages/CSS/text/line-height",
"style": {
"navigationBarTitleText": "line-height"
}
},
{
"path": "pages/CSS/text/text-align",
"style": {
"navigationBarTitleText": "text-align"
}
},
{
"path": "pages/CSS/text/text-overflow",
"style": {
"navigationBarTitleText": "text-overflow"
}
},
{
"path": "pages/CSS/text/text-decoration-line",
"style": {
"navigationBarTitleText": "text-decoration-line"
}
},
{
"path": "pages/CSS/transition/transition",
"style": {
"navigationBarTitleText": "Transition"
}
},
{
"path": "pages/CSS/transform/transform",
"style": {
"navigationBarTitleText": "Transform"
}
},
{
"path": "pages/API/request/request",
"style": {
"navigationBarTitleText": ""
}
},
{
"path": "pages/API/upload-file/upload-file",
"style": {
"navigationBarTitleText": ""
}
},
{
"path": "pages/API/download-file/download-file",
"style": {
"navigationBarTitleText": ""
}
},
{
"path": "pages/API/websocket-socketTask/websocket-socketTask",
"style": {
"navigationBarTitleText": ""
}
},
{
"path": "pages/API/websocket-global/websocket-global",
"style": {
"navigationBarTitleText": ""
}
},
{
"path": "pages/API/get-system-info/get-system-info",
"style": {
"navigationBarTitleText": ""
}
},
{
"path": "pages/API/get-device-info/get-device-info",
"style": {
"navigationBarTitleText": ""
}
},
{
"path": "pages/API/get-app-base-info/get-app-base-info",
"style": {
"navigationBarTitleText": ""
}
},
{
"path": "pages/API/get-system-setting/get-system-setting",
"style": {
"navigationBarTitleText": ""
}
},
{
"path": "pages/API/get-app-authorize-setting/get-app-authorize-setting",
"style": {
"navigationBarTitleText": ""
}
},
{
"path": "pages/API/preview-image/preview-image",
"style": {
"navigationBarTitleText": "图片预览"
}
},
{
"path": "pages/component/scroll-view/scroll-view-refresher",
"style": {
"navigationBarTitleText": "scroll-view-refresher"
}
},
{
"path": "pages/component/list-news/list",
"style": {
"navigationBarTitleText": "列表到详情示例"
}
},
{
"path": "pages/API/get-network-type/get-network-type",
"style": {
"navigationBarTitleText": ""
}
},
{
"path": "pages/component/list-news/detail/detail",
"style": {
"navigationBarTitleText": "详情示例"
}
},
{
"path": "pages/API/page-scroll-to/page-scroll-to",
"style": {
"navigationBarTitleText": "pageScrollTo"
}
},
{
"path": "pages/API/event-bus/event-bus",
"style": {
"navigationBarTitleText": "event-bus"
}
},
{
"path": "pages/template/drop-card/drop-card",
"style": {
"navigationBarTitleText": "drop-card"
}
},
{
"path": "pages/tabBar/template",
"style": {
"navigationBarTitleText": "模板"
}
},
{
"path": "pages/component/long-list/long-list",
"style": {
"navigationBarTitleText": "长列表示例"
}
},
{
"path": "pages/component/long-list/detail/detail",
"style": {
"navigationBarTitleText": "详情示例"
}
},
{
"path": "pages/template/swiper-list/swiper-list",
"style": {
"navigationBarTitleText": "swiper-list"
}
},
{
"path": "pages/template/swiper-vertical-video/swiper-vertical-video",
"style": {
"navigationStyle": "custom"
}
},
{
"path": "pages/template/scroll-sticky/scroll-sticky",
"style": {
"navigationBarTitleText": "滚动吸顶"
}
},
{
"path": "pages/template/scroll-sticky2/scroll-sticky2",
"style": {
"navigationBarTitleText": "滚动吸顶2"
}
},
{
"path": "pages/API/get-battery-info/get-battery-info",
"style": {
"navigationBarTitleText": "电量"
}
},
{
"path": "pages/CSS/border/complex-border/complex-border",
"style": {
"navigationBarTitleText": "border属性组合示例",
"enablePullDownRefresh": false
}
},
{
"path": "pages/template/scroll-fold-nav2/scroll-fold-nav2",
"style": {
"navigationStyle": "custom",
"navigationBarTextStyle": "black"
}
},
{
"path": "pages/template/calendar/calendar",
"style": {
"navigationBarTitleText": "日历",
"enablePullDownRefresh": false
}
},
{
"path": "pages/template/custom-refresher/custom-refresher",
"style": {
"navigationBarTitleText": "自定义下拉刷新",
"enablePullDownRefresh": false
}
},
{
"path": "pages/API/get-window-info/get-window-info",
"style": {
"navigationBarTitleText": "",
"enablePullDownRefresh": false
}
},
{
"path": "pages/template/half-screen/half-screen",
"style": {
"navigationBarTitleText": "半屏弹窗",
"enablePullDownRefresh": false
}
},
{
"path": "pages/template/long-list/long-list",
"style": {
"navigationBarTitleText": "复杂长列表",
"enablePullDownRefresh": false
}
},
{
"path": "pages/component/list-view-autotest/list-view-autotest",
"style": {
"navigationBarTitleText": "list-view-autotest",
"enablePullDownRefresh": false
}
}, {
"path": "pages/component/scroll-view/scroll-view-props",
"style": {
"navigationBarTitleText": "非下拉刷新的scroll-view属性示例",
"enablePullDownRefresh": false
}
}, {
"path": "pages/component/scroll-view/scroll-view-refresher-props",
"style": {
"navigationBarTitleText": "下拉刷新的scroll-view属性示例",
"enablePullDownRefresh": false
}
}
,{
"path" : "pages/component/scroll-view/scroll-view-custom-refresher-props",
"style" :
{
"navigationBarTitleText": "自定义下拉刷新的scroll-view属性示例",
"enablePullDownRefresh": false
}
}
],
"globalStyle": {
"pageOrientation": "portrait",
"navigationBarTitleText": "Hello uniapp x",
"navigationBarTextStyle": "white",
"navigationBarBackgroundColor": "#007AFF",
"backgroundColor": "#efeff4",
"backgroundColorTop": "#F4F5F6",
"backgroundColorBottom": "#F4F5F6"
},
"tabBar": {
"color": "#7A7E83",
"selectedColor": "#007AFF",
"borderStyle": "black",
"backgroundColor": "#F8F8F8",
"list": [{
"pagePath": "pages/tabBar/component",
"iconPath": "static/component.png",
"selectedIconPath": "static/componentHL.png",
"text": "内置组件"
},
{
"pagePath": "pages/tabBar/API",
"iconPath": "static/api.png",
"selectedIconPath": "static/apiHL.png",
"text": "接口"
},
{
"pagePath": "pages/tabBar/CSS",
"iconPath": "static/css.png",
"selectedIconPath": "static/cssHL.png",
"text": "CSS"
},
{
"pagePath": "pages/tabBar/template",
"iconPath": "static/template.png",
"selectedIconPath": "static/templateHL.png",
"text": "模板"
}
]
},
"condition": {
//模式配置,仅开发期间生效
"current": 0, //当前激活的模式(list 的索引项)
"list": [{
"name": "", //模式名称
"path": "", //启动页面,必选
"query": "" //启动参数,在页面的onLoad函数里面得到
}]
}
"pages": [
//pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages
{
"path": "pages/tabBar/component",
"style": {
"navigationBarTitleText": "内置组件",
"backgroundColor": "#F8F8F8"
}
},
{
"path": "pages/component/view/view",
"style": {
"navigationBarTitleText": "view"
}
},
{
"path": "pages/component/view/general-attribute",
"style": {
"navigationBarTitleText": "general-attribute"
}
},
{
"path": "pages/component/view/general-event",
"style": {
"navigationBarTitleText": "general-event"
}
},
{
"path": "pages/component/scroll-view/scroll-view",
"style": {
"navigationBarTitleText": "scroll-view"
}
},
{
"path": "pages/component/text/text",
"style": {
"navigationBarTitleText": "text"
}
},
{
"path": "pages/component/text/text-props",
"style": {
"navigationBarTitleText": "text-props"
}
},
{
"path": "pages/component/progress/progress",
"style": {
"navigationBarTitleText": "progress"
}
},
{
"path": "pages/component/button/button",
"style": {
"navigationBarTitleText": "button"
}
},
{
"path": "pages/component/radio/radio",
"style": {
"navigationBarTitleText": "radio"
}
},
{
"path": "pages/component/checkbox/checkbox",
"style": {
"navigationBarTitleText": "checkbox"
}
},
{
"path": "pages/component/input/input",
"style": {
"navigationBarTitleText": "input"
}
},
{
"path": "pages/component/textarea/textarea",
"style": {
"navigationBarTitleText": "textarea"
}
},
{
"path": "pages/component/slider/slider",
"style": {
"navigationBarTitleText": "slider"
}
},
{
"path": "pages/component/picker-view/picker-view",
"style": {
"navigationBarTitleText": "picker-view"
}
},
{
"path": "pages/component/slider-100/slider-100",
"style": {
"navigationBarTitleText": "slider x 100"
}
},
{
"path": "pages/component/switch/switch",
"style": {
"navigationBarTitleText": "switch"
}
},
{
"path": "pages/component/swiper/swiper",
"style": {
"navigationBarTitleText": "swiper"
}
},
{
"path": "pages/component/image/image",
"style": {
"navigationBarTitleText": "image"
}
},
{
"path": "pages/component/image/image-format",
"style": {
"navigationBarTitleText": "image-format"
}
},
{
"path": "pages/component/image/image-mode",
"style": {
"navigationBarTitleText": "image-mode"
}
},
{
"path": "pages/component/image/image-path",
"style": {
"navigationBarTitleText": "image-path"
}
},
{
"path": "pages/component/image/image-large",
"style": {
"navigationBarTitleText": "大图测试"
}
},
{
"path": "pages/component/video/video",
"style": {
"navigationBarTitleText": "video"
}
},
{
"path": "pages/component/web-view/web-view",
"style": {
"navigationBarTitleText": "web-view"
}
},
{
"path": "pages/component/web-view-local/web-view-local",
"style": {
"navigationBarTitleText": "web-view-local"
}
},
{
"path": "pages/component/navigator/navigator",
"style": {
"navigationBarTitleText": "navigator"
}
},
{
"path": "pages/component/navigator/navigate",
"style": {
"navigationBarTitleText": "navigatePage"
}
},
{
"path": "pages/component/navigator/redirect",
"style": {
"navigationBarTitleText": "redirectPage"
}
},
{
"path": "pages/tabBar/API",
"style": {
"navigationBarTitleText": "接口",
"backgroundColor": "#F8F8F8"
}
},
{
"path": "pages/API/get-app/get-app",
"style": {
"navigationBarTitleText": "getApp"
}
},
{
"path": "pages/API/exit/exit",
"style": {
"navigationBarTitleText": "exit"
}
},
{
"path": "pages/API/get-current-pages/get-current-pages",
"style": {
"navigationBarTitleText": "getCurrentPages"
}
},
{
"path": "pages/API/get-launch-options-sync/get-launch-options-sync",
"style": {
"navigationBarTitleText": "getLaunchOptionsSync"
}
},
{
"path": "pages/API/navigator/navigator",
"style": {
"navigationBarTitleText": "页面跳转"
}
},
{
"path": "pages/API/set-navigation-bar-color/set-navigation-bar-color",
"style": {
"navigationBarTitleText": "设置导航条颜色"
}
},
{
"path": "pages/API/navigator/new-page/new-page-1",
"style": {
"navigationBarTitleText": "新页面-1"
}
},
{
"path": "pages/API/navigator/new-page/new-page-2",
"style": {
"navigationBarTitleText": "新页面-2",
"enablePullDownRefresh": true
}
},
{
"path": "pages/API/pull-down-refresh/pull-down-refresh",
"style": {
"navigationBarTitleText": "页面级下拉刷新",
"enablePullDownRefresh": true
}
},
{
"path": "pages/API/nodes-info/nodes-info",
"style": {
"navigationBarTitleText": "查询节点信息的对象"
}
},
{
"path": "pages/API/storage/storage",
"style": {
"navigationBarTitleText": "数据存储"
}
},
{
"path": "pages/API/action-sheet/action-sheet",
"style": {
"navigationBarTitleText": "操作菜单"
}
},
{
"path": "pages/API/modal/modal",
"style": {
"navigationBarTitleText": "模态弹窗"
}
},
{
"path": "pages/API/show-loading/show-loading",
"style": {
"navigationBarTitleText": "加载提示框"
}
},
{
"path": "pages/API/toast/toast",
"style": {
"navigationBarTitleText": "消息提示框"
}
},
{
"path": "pages/API/load-font-face/load-font-face",
"style": {
"navigationBarTitleText": "动态加载字体"
}
},
{
"path": "pages/API/load-font-face/load-font-face-child",
"style": {
"navigationBarTitleText": "动态加载字体-子页面"
}
},
{
"path": "pages/API/get-location/get-location",
"style": {
"navigationBarTitleText": "获取定位"
}
},
{
"path": "pages/tabBar/CSS",
"style": {
"navigationBarTitleText": "CSS",
"backgroundColor": "#F8F8F8"
}
},
{
"path": "pages/CSS/background/background-color",
"style": {
"navigationBarTitleText": "background-color"
}
},
{
"path": "pages/CSS/background/background-image",
"style": {
"navigationBarTitleText": "background-image"
}
},
{
"path": "pages/CSS/border/border-color",
"style": {
"navigationBarTitleText": "border-color"
}
},
{
"path": "pages/CSS/border/border-radius",
"style": {
"navigationBarTitleText": "border-radius"
}
},
{
"path": "pages/CSS/border/border-style",
"style": {
"navigationBarTitleText": "border-style"
}
},
{
"path": "pages/CSS/border/border-width",
"style": {
"navigationBarTitleText": "border-width"
}
},
{
"path": "pages/CSS/border/border",
"style": {
"navigationBarTitleText": "border"
}
},
{
"path": "pages/CSS/box-shadow/box-shadow",
"style": {
"navigationBarTitleText": "box-shadow"
}
},
{
"path": "pages/CSS/flex/align-content",
"style": {
"navigationBarTitleText": "align-content"
}
},
{
"path": "pages/CSS/flex/align-items",
"style": {
"navigationBarTitleText": "align-items"
}
},
{
"path": "pages/CSS/flex/flex-basis",
"style": {
"navigationBarTitleText": "flex-basis"
}
},
{
"path": "pages/CSS/flex/flex-direction",
"style": {
"navigationBarTitleText": "flex-direction"
}
},
{
"path": "pages/CSS/flex/flex-flow",
"style": {
"navigationBarTitleText": "flex-flow"
}
},
{
"path": "pages/CSS/flex/flex-grow",
"style": {
"navigationBarTitleText": "flex-grow"
}
},
{
"path": "pages/CSS/flex/flex-shrink",
"style": {
"navigationBarTitleText": "flex-shrink"
}
},
{
"path": "pages/CSS/flex/flex",
"style": {
"navigationBarTitleText": "flex"
}
},
{
"path": "pages/CSS/flex/justify-content",
"style": {
"navigationBarTitleText": "justify-content"
}
},
{
"path": "pages/CSS/layout/height",
"style": {
"navigationBarTitleText": "height"
}
},
{
"path": "pages/CSS/layout/max-height",
"style": {
"navigationBarTitleText": "max-height"
}
},
{
"path": "pages/CSS/layout/max-width",
"style": {
"navigationBarTitleText": "max-width"
}
},
{
"path": "pages/CSS/layout/min-height",
"style": {
"navigationBarTitleText": "min-height"
}
},
{
"path": "pages/CSS/layout/min-width",
"style": {
"navigationBarTitleText": "min-width"
}
},
{
"path": "pages/CSS/layout/position",
"style": {
"navigationBarTitleText": "position"
}
},
{
"path": "pages/CSS/layout/width",
"style": {
"navigationBarTitleText": "width"
}
},
{
"path": "pages/CSS/layout/visibility",
"style": {
"navigationBarTitleText": "visibility"
}
},
{
"path": "pages/CSS/margin/margin-bottom",
"style": {
"navigationBarTitleText": "margin-bottom"
}
},
{
"path": "pages/CSS/margin/margin-left",
"style": {
"navigationBarTitleText": "margin-left"
}
},
{
"path": "pages/CSS/margin/margin-right",
"style": {
"navigationBarTitleText": "margin-right"
}
},
{
"path": "pages/CSS/margin/margin-top",
"style": {
"navigationBarTitleText": "margin-top"
}
},
{
"path": "pages/CSS/margin/margin",
"style": {
"navigationBarTitleText": "margin"
}
},
{
"path": "pages/CSS/padding/padding-bottom",
"style": {
"navigationBarTitleText": "padding-bottom"
}
},
{
"path": "pages/CSS/padding/padding-left",
"style": {
"navigationBarTitleText": "padding-left"
}
},
{
"path": "pages/CSS/padding/padding-right",
"style": {
"navigationBarTitleText": "padding-right"
}
},
{
"path": "pages/CSS/padding/padding-top",
"style": {
"navigationBarTitleText": "padding-top"
}
},
{
"path": "pages/CSS/padding/padding",
"style": {
"navigationBarTitleText": "padding"
}
},
{
"path": "pages/CSS/text/color",
"style": {
"navigationBarTitleText": "color"
}
},
{
"path": "pages/CSS/text/font-family",
"style": {
"navigationBarTitleText": "font-family"
}
},
{
"path": "pages/CSS/text/font-size",
"style": {
"navigationBarTitleText": "font-size"
}
},
{
"path": "pages/CSS/text/font-style",
"style": {
"navigationBarTitleText": "font-style"
}
},
{
"path": "pages/CSS/text/font-weight",
"style": {
"navigationBarTitleText": "font-weight"
}
},
{
"path": "pages/CSS/text/line-height",
"style": {
"navigationBarTitleText": "line-height"
}
},
{
"path": "pages/CSS/text/text-align",
"style": {
"navigationBarTitleText": "text-align"
}
},
{
"path": "pages/CSS/text/text-overflow",
"style": {
"navigationBarTitleText": "text-overflow"
}
},
{
"path": "pages/CSS/text/text-decoration-line",
"style": {
"navigationBarTitleText": "text-decoration-line"
}
},
{
"path": "pages/CSS/transition/transition",
"style": {
"navigationBarTitleText": "Transition"
}
},
{
"path": "pages/CSS/transform/transform",
"style": {
"navigationBarTitleText": "Transform"
}
},
{
"path": "pages/API/request/request",
"style": {
"navigationBarTitleText": ""
}
},
{
"path": "pages/API/upload-file/upload-file",
"style": {
"navigationBarTitleText": ""
}
},
{
"path": "pages/API/download-file/download-file",
"style": {
"navigationBarTitleText": ""
}
},
{
"path": "pages/API/websocket-socketTask/websocket-socketTask",
"style": {
"navigationBarTitleText": ""
}
},
{
"path": "pages/API/websocket-global/websocket-global",
"style": {
"navigationBarTitleText": ""
}
},
{
"path": "pages/API/get-system-info/get-system-info",
"style": {
"navigationBarTitleText": ""
}
},
{
"path": "pages/API/get-device-info/get-device-info",
"style": {
"navigationBarTitleText": ""
}
},
{
"path": "pages/API/get-app-base-info/get-app-base-info",
"style": {
"navigationBarTitleText": ""
}
},
{
"path": "pages/API/get-system-setting/get-system-setting",
"style": {
"navigationBarTitleText": ""
}
},
{
"path": "pages/API/get-app-authorize-setting/get-app-authorize-setting",
"style": {
"navigationBarTitleText": ""
}
},
{
"path": "pages/API/preview-image/preview-image",
"style": {
"navigationBarTitleText": "图片预览"
}
},
{
"path": "pages/component/scroll-view/scroll-view-refresher",
"style": {
"navigationBarTitleText": "scroll-view-refresher"
}
},
{
"path": "pages/component/list-news/list",
"style": {
"navigationBarTitleText": "列表到详情示例"
}
},
{
"path": "pages/API/get-network-type/get-network-type",
"style": {
"navigationBarTitleText": ""
}
},
{
"path": "pages/component/list-news/detail/detail",
"style": {
"navigationBarTitleText": "详情示例"
}
},
{
"path": "pages/API/page-scroll-to/page-scroll-to",
"style": {
"navigationBarTitleText": "pageScrollTo"
}
},
{
"path": "pages/API/event-bus/event-bus",
"style": {
"navigationBarTitleText": "event-bus"
}
},
{
"path": "pages/template/drop-card/drop-card",
"style": {
"navigationBarTitleText": "drop-card"
}
},
{
"path": "pages/tabBar/template",
"style": {
"navigationBarTitleText": "模板"
}
},
{
"path": "pages/component/long-list/long-list",
"style": {
"navigationBarTitleText": "长列表示例"
}
},
{
"path": "pages/component/long-list/detail/detail",
"style": {
"navigationBarTitleText": "详情示例"
}
},
{
"path": "pages/template/swiper-list/swiper-list",
"style": {
"navigationBarTitleText": "swiper-list"
}
},
{
"path": "pages/template/swiper-vertical-video/swiper-vertical-video",
"style": {
"navigationStyle": "custom"
}
},
{
"path": "pages/template/scroll-sticky/scroll-sticky",
"style": {
"navigationBarTitleText": "滚动吸顶"
}
},
{
"path": "pages/template/scroll-sticky2/scroll-sticky2",
"style": {
"navigationBarTitleText": "滚动吸顶2"
}
},
{
"path": "pages/API/get-battery-info/get-battery-info",
"style": {
"navigationBarTitleText": "电量"
}
},
{
"path": "pages/CSS/border/complex-border/complex-border",
"style": {
"navigationBarTitleText": "border属性组合示例",
"enablePullDownRefresh": false
}
},
{
"path": "pages/template/scroll-fold-nav2/scroll-fold-nav2",
"style": {
"navigationStyle": "custom",
"navigationBarTextStyle": "black"
}
},
{
"path": "pages/template/calendar/calendar",
"style": {
"navigationBarTitleText": "日历",
"enablePullDownRefresh": false
}
},
{
"path": "pages/template/custom-refresher/custom-refresher",
"style": {
"navigationBarTitleText": "自定义下拉刷新",
"enablePullDownRefresh": false
}
},
{
"path": "pages/API/get-window-info/get-window-info",
"style": {
"navigationBarTitleText": "",
"enablePullDownRefresh": false
}
},
{
"path": "pages/template/half-screen/half-screen",
"style": {
"navigationBarTitleText": "半屏弹窗",
"enablePullDownRefresh": false
}
},
{
"path": "pages/template/long-list/long-list",
"style": {
"navigationBarTitleText": "复杂长列表",
"enablePullDownRefresh": false
}
},
{
"path": "pages/component/list-view-autotest/list-view-autotest",
"style": {
"navigationBarTitleText": "list-view-autotest",
"enablePullDownRefresh": false
}
},
{
"path": "pages/component/scroll-view/scroll-view-props",
"style": {
"navigationBarTitleText": "非下拉刷新的scroll-view属性示例",
"enablePullDownRefresh": false
}
},
{
"path": "pages/component/scroll-view/scroll-view-refresher-props",
"style": {
"navigationBarTitleText": "下拉刷新的scroll-view属性示例",
"enablePullDownRefresh": false
}
},
{
"path": "pages/component/scroll-view/scroll-view-custom-refresher-props",
"style": {
"navigationBarTitleText": "自定义下拉刷新的scroll-view属性示例",
"enablePullDownRefresh": false
}
}
],
"globalStyle": {
"pageOrientation": "portrait",
"navigationBarTitleText": "Hello uniapp x",
"navigationBarTextStyle": "white",
"navigationBarBackgroundColor": "#007AFF",
"backgroundColor": "#efeff4",
"backgroundColorTop": "#F4F5F6",
"backgroundColorBottom": "#F4F5F6"
},
"tabBar": {
"color": "#7A7E83",
"selectedColor": "#007AFF",
"borderStyle": "black",
"backgroundColor": "#F8F8F8",
"list": [
{
"pagePath": "pages/tabBar/component",
"iconPath": "static/component.png",
"selectedIconPath": "static/componentHL.png",
"text": "内置组件"
},
{
"pagePath": "pages/tabBar/API",
"iconPath": "static/api.png",
"selectedIconPath": "static/apiHL.png",
"text": "接口"
},
{
"pagePath": "pages/tabBar/CSS",
"iconPath": "static/css.png",
"selectedIconPath": "static/cssHL.png",
"text": "CSS"
},
{
"pagePath": "pages/tabBar/template",
"iconPath": "static/template.png",
"selectedIconPath": "static/templateHL.png",
"text": "模板"
}
]
},
"condition": {
//模式配置,仅开发期间生效
"current": 0, //当前激活的模式(list 的索引项)
"list": [
{
"name": "", //模式名称
"path": "", //启动页面,必选
"query": "" //启动参数,在页面的onLoad函数里面得到
}
]
}
}
\ No newline at end of file
const PAGE_PATH = '/pages/component/view/general-attribute'
describe('general attribute', () => {
let page
beforeAll(async () => {
page = await program.navigateTo(PAGE_PATH)
await page.waitFor(1000)
})
it('screenshot', async () => {
const image = await program.screenshot()
expect(image).toMatchImageSnapshot()
})
it('validateGeneralAttributes', async () => {
const button = await page.$('.btn')
await button.tap()
expect(await button.text()).toBe('基础属性验证成功')
})
})
<template>
<!-- #ifdef APP -->
<scroll-view style="flex: 1">
<!-- #endif -->
<view>
<page-head :title="title"></page-head>
<view class="uni-padding-wrap uni-common-mt container">
<view :id="generalId" :class="generalClass" :name="generalName" :title="generalTitle" :data-test="generalData" style="background-color: aqua" ref="general-target"> </view>
<button class="btn uni-common-mt" @click="validateGeneralAttributes">{{ validateGeneralAttrText }}</button>
<view class="view-class" :hover-class="hoverClass" ref="view-target">
<text>按下 50 ms 后背景变红</text>
<text>抬起 400 ms 后背景恢复</text>
</view>
<view class="view-class" :hover-class="hoverClass" :hover-start-time="1000" :hover-stay-time="1000" ref="view-target">
<text>按下 1000 ms 后背景变红</text>
<text>抬起 1000 ms 后背景恢复</text>
</view>
</view>
</view>
<!-- #ifdef APP -->
</scroll-view>
<!-- #endif -->
</template>
<script lang="uts">
export default {
data() {
return {
title: 'general-attribute',
generalId: 'general-id',
generalClass: 'general-class',
generalName: 'general-name',
generalTitle: 'general-title',
generalData: 'general-data',
validateGeneralAttrText: '验证基础属性',
hoverClass: 'hover-class',
validateViewAttrText: '验证 view 属性',
}
},
methods: {
validateGeneralAttributes() {
const generalTarget = this.$refs.get('general-target') as INode
const generalId = generalTarget.getAttribute('id')
if (generalId != this.generalId) {
this.validateGeneralAttrText = '基础属性 id 验证失败'
return
}
const classList = generalTarget.ext['classList'] as string[]
if (!classList.includes('general-class')) {
this.validateGeneralAttrText = '基础属性 class 验证失败'
return
}
const generalName = generalTarget.getAttribute('name')
if (generalName != this.generalName) {
this.validateGeneralAttrText = '基础属性 name 验证失败'
return
}
const generalTitle = generalTarget.getAttribute('title')
if (generalTitle != this.generalTitle) {
this.validateGeneralAttrText = '基础属性 title 验证失败'
return
}
const generalData = generalTarget.getAttribute('data-test')
if (generalData != this.generalData) {
this.validateGeneralAttrText = '基础属性 data-test 验证失败'
return
}
this.validateGeneralAttrText = '基础属性验证成功'
},
},
}
</script>
<style>
.general-class {
margin: 20px 0 0 50px;
width: 240px;
height: 100px;
background-color: antiquewhite;
}
.view-class {
margin: 20px 0 0 50px;
padding: 10px;
width: 240px;
height: 100px;
background-color: antiquewhite;
}
.view-class text {
text-align: center;
}
.hover-class {
background-color: red;
}
</style>
const PAGE_PATH = '/pages/component/view/general-event'
describe('event trigger sequence', () => {
let page
let el
beforeAll(async () => {
page = await program.navigateTo(PAGE_PATH)
await page.waitFor(1000)
el = await page.$('.target')
})
it('touch', async () => {
await el.touchstart({
touches: [
{
identifier: 1,
pageX: 100,
pageY: 100,
},
],
changedTouches: [
{
identifier: 1,
pageX: 100,
pageY: 100,
},
],
})
await el.touchmove({
touches: [
{
identifier: 1,
pageX: 100,
pageY: 100,
},
],
changedTouches: [
{
identifier: 1,
pageX: 101,
pageY: 101,
},
],
})
await el.touchend({
touches: [],
changedTouches: [
{
identifier: 1,
pageX: 101,
pageY: 101,
},
],
})
const data = await page.data()
expect(data.onTouchStartTime).toBeLessThan(data.onTouchMoveTime)
expect(data.onTouchMoveTime).toBeLessThan(data.onTouchEndTime)
})
it('click', async () => {
await el.tap()
const data = await page.data()
expect(data.onTapTime).toBeLessThan(data.onClickTime)
})
it('longPress', async () => {
const now = Date.now()
await el.longpress()
const data = await page.data()
expect(now).toBeLessThan(data.onLongPressTime)
})
})
......@@ -5,111 +5,66 @@
<view>
<page-head :title="title"></page-head>
<view class="uni-padding-wrap uni-common-mt container">
<view
class="target"
@click="onClick"
@touchstart="onTouchStart"
@touchmove="onTouchMove"
@touchend="onTouchEnd"
></view>
<view v-if="clickEvent !== null">
<text class="title1">click Event: </text>
<text>x: {{ clickEvent!.x }}, y: {{ clickEvent!.y }}</text>
</view>
<view class="target" @touchstart="onTouchStart" @touchmove="onTouchMove" @touchend="onTouchEnd" @tap="onTap" @click="onClick" @longpress="onLongPress"></view>
<view v-if="touchStartEvent !== null">
<text class="title1">touchStart Event: </text>
<text class="title2">touches: </text>
<template
v-for="(touch, index) in touchStartEvent!.touches"
:key="index"
>
<template v-for="(touch, index) in touchStartEvent!.touches" :key="index">
<text class="title3">touch[{{ index }}]:</text>
<text>pageX: {{ touch.pageX }}, pageY: {{ touch.pageY }}</text>
<text
>clientX: {{ touch.clientX }}, clientY: {{ touch.clientY }}</text
>
<text
>screenX: {{ touch.screenX }}, screenY: {{ touch.screenY }}</text
>
<text>clientX: {{ touch.clientX }}, clientY: {{ touch.clientY }}</text>
<text>screenX: {{ touch.screenX }}, screenY: {{ touch.screenY }}</text>
</template>
<text class="title2 uni-common-mt">changedTouches: </text>
<template
v-for="(touch, index) in touchStartEvent!.changedTouches"
:key="index"
>
<template v-for="(touch, index) in touchStartEvent!.changedTouches" :key="index">
<text class="title3">touch[{{ index }}]:</text>
<text>pageX: {{ touch.pageX }}, pageY: {{ touch.pageY }}</text>
<text
>clientX: {{ touch.clientX }}, clientY: {{ touch.clientY }}</text
>
<text
>screenX: {{ touch.screenX }}, screenY: {{ touch.screenY }}</text
>
<text>clientX: {{ touch.clientX }}, clientY: {{ touch.clientY }}</text>
<text>screenX: {{ touch.screenX }}, screenY: {{ touch.screenY }}</text>
</template>
</view>
<view v-if="touchMoveEvent !== null">
<text class="title1">touchMove Event: </text>
<text class="title2">touches: </text>
<template
v-for="(touch, index) in touchMoveEvent!.touches"
:key="index"
>
<template v-for="(touch, index) in touchMoveEvent!.touches" :key="index">
<text class="title3">touch[{{ index }}]:</text>
<text>pageX: {{ touch.pageX }}, pageY: {{ touch.pageY }}</text>
<text
>clientX: {{ touch.clientX }}, clientY: {{ touch.clientY }}</text
>
<text
>screenX: {{ touch.screenX }}, screenY: {{ touch.screenY }}</text
>
<text>clientX: {{ touch.clientX }}, clientY: {{ touch.clientY }}</text>
<text>screenX: {{ touch.screenX }}, screenY: {{ touch.screenY }}</text>
</template>
<text class="title2 uni-common-mt">changedTouches: </text>
<template
v-for="(touch, index) in touchMoveEvent!.changedTouches"
:key="index"
>
<template v-for="(touch, index) in touchMoveEvent!.changedTouches" :key="index">
<text class="title3">touch[{{ index }}]:</text>
<text>pageX: {{ touch.pageX }}, pageY: {{ touch.pageY }}</text>
<text
>clientX: {{ touch.clientX }}, clientY: {{ touch.clientY }}</text
>
<text
>screenX: {{ touch.screenX }}, screenY: {{ touch.screenY }}</text
>
<text>clientX: {{ touch.clientX }}, clientY: {{ touch.clientY }}</text>
<text>screenX: {{ touch.screenX }}, screenY: {{ touch.screenY }}</text>
</template>
</view>
<view v-if="touchEndEvent !== null">
<text class="title1">touchEnd Event: </text>
<text class="title2">touches: </text>
<template
v-if="touchEndEvent!.touches.length > 0"
v-for="(touch, index) in touchEndEvent!.touches"
:key="index"
>
<template v-if="touchEndEvent!.touches.length > 0" v-for="(touch, index) in touchEndEvent!.touches" :key="index">
<text class="title3">touch[{{ index }}]:</text>
<text>pageX: {{ touch.pageX }}, pageY: {{ touch.pageY }}</text>
<text
>clientX: {{ touch.clientX }}, clientY: {{ touch.clientY }}</text
>
<text
>screenX: {{ touch.screenX }}, screenY: {{ touch.screenY }}</text
>
<text>clientX: {{ touch.clientX }}, clientY: {{ touch.clientY }}</text>
<text>screenX: {{ touch.screenX }}, screenY: {{ touch.screenY }}</text>
</template>
<text class="title2 uni-common-mt">changedTouches: </text>
<template
v-for="(touch, index) in touchEndEvent!.changedTouches"
:key="index"
>
<template v-for="(touch, index) in touchEndEvent!.changedTouches" :key="index">
<text class="title3">touch[{{ index }}]:</text>
<text>pageX: {{ touch.pageX }}, pageY: {{ touch.pageY }}</text>
<text
>clientX: {{ touch.clientX }}, clientY: {{ touch.clientY }}</text
>
<text
>screenX: {{ touch.screenX }}, screenY: {{ touch.screenY }}</text
>
<text>clientX: {{ touch.clientX }}, clientY: {{ touch.clientY }}</text>
<text>screenX: {{ touch.screenX }}, screenY: {{ touch.screenY }}</text>
</template>
</view>
<view v-if="tapEvent !== null">
<text class="title1">tap Event: </text>
<text>x: {{ tapEvent!.x }}, y: {{ tapEvent!.y }}</text>
</view>
<view v-if="clickEvent !== null">
<text class="title1">click Event: </text>
<text>x: {{ clickEvent!.x }}, y: {{ clickEvent!.y }}</text>
</view>
</view>
</view>
<!-- #ifdef APP -->
......@@ -121,25 +76,49 @@ export default {
data() {
return {
title: 'general-event',
clickEvent: null as MouseEvent | null,
onTouchStartTime: 0,
touchStartEvent: null as TouchEvent | null,
onTouchMoveTime: 0,
touchMoveEvent: null as TouchEvent | null,
onTouchEndTime: 0,
touchEndEvent: null as TouchEvent | null,
onTapTime: 0,
tapEvent: null as MouseEvent | null,
onClickTime: 0,
clickEvent: null as MouseEvent | null,
onLongPressTime: 0,
}
},
methods: {
onClick(e: MouseEvent){
this.clickEvent = e
},
onTouchStart(e: TouchEvent){
this.touchStartEvent = e
this.onTouchStartTime = Date.now()
console.warn('onTouchStart', this.onTouchStartTime)
},
onTouchMove(e: TouchEvent){
this.touchMoveEvent = e
this.onTouchMoveTime = Date.now()
console.warn('onTouchMove', this.onTouchMoveTime)
},
onTouchEnd(e: TouchEvent){
this.touchEndEvent = e
}
this.onTouchEndTime = Date.now()
console.warn('onTouchEnd', this.onTouchEndTime)
},
onTap(e: MouseEvent){
this.tapEvent = e
this.onTapTime = Date.now()
console.warn('onTap', this.onTapTime)
},
onClick(e: MouseEvent){
this.clickEvent = e
this.onClickTime = Date.now()
console.warn('onClick', this.onClickTime)
},
onLongPress(){
this.onLongPressTime = Date.now()
console.warn('onLongPress', this.onLongPressTime)
},
},
}
</script>
......
......@@ -4,7 +4,7 @@
<!-- #endif -->
<view>
<page-head title="view"></page-head>
<view class="uni-padding-wrap uni-common-mt">
<view class="uni-padding-wrap uni-common-mt uni-common-mb">
<view>
<text class="uni-hello-text">
Flex是Flexible
......@@ -232,6 +232,8 @@
</view>
</view>
</view>
<button class="uni-common-mt" @click="goGeneralAttribute">更多属性测试</button>
<button class="uni-common-mt" @click="goGeneralEvent">更多事件测试</button>
</view>
</view>
<!-- #ifdef APP -->
......@@ -240,9 +242,18 @@
</template>
<script>
export default {
data() {
return {}
},
methods: {
goGeneralAttribute(){
uni.navigateTo({
url: '/pages/component/view/general-attribute'
})
},
goGeneralEvent(){
uni.navigateTo({
url: '/pages/component/view/general-event'
})
},
}
}
</script>
......
......@@ -263,23 +263,6 @@ export default {
pages: [] as Page[]
}
*/
{
id: 'general-attr-event',
name: '通用属性和事件',
open: false,
pages: [
{
name: '通用属性',
url: 'general-attr',
enable: false,
},
{
name: '通用事件',
url: '/pages/component/general-event/general-event',
enable: true,
},
] as Page[],
},
] as ListItem[],
arrowUpIcon: '/static/icons/arrow-up.png',
arrowDownIcon: '/static/icons/arrow-down.png',
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册