众妙之门
@@ -17,7 +17,7 @@
|
|||||||
"type" : "uniCloud"
|
"type" : "uniCloud"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"playground" : "custom",
|
"playground" : "standard",
|
||||||
"type" : "uni-app:app-android"
|
"type" : "uni-app:app-android"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -12,8 +12,8 @@
|
|||||||
"src" : "图片路径"
|
"src" : "图片路径"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"versionName" : "1.0.18",
|
"versionName" : "1.0.10",
|
||||||
"versionCode" : 1018,
|
"versionCode" : 1010,
|
||||||
"app-plus" : {
|
"app-plus" : {
|
||||||
"nvueCompiler" : "weex",
|
"nvueCompiler" : "weex",
|
||||||
"compatible" : {
|
"compatible" : {
|
||||||
|
|||||||
@@ -1,4 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
|
<page-meta
|
||||||
|
:page-font-size="$baseFontSize() + 'px'"
|
||||||
|
:root-font-size="$baseFontSize() + 'px'"
|
||||||
|
></page-meta>
|
||||||
<view class="mask flex-center">
|
<view class="mask flex-center">
|
||||||
<view class="content botton-radius">
|
<view class="content botton-radius">
|
||||||
<view class="content-top">
|
<view class="content-top">
|
||||||
|
|||||||
2
unpackage/dist/build/app-plus/manifest.json
vendored
@@ -1,678 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html lang="zh-CN">
|
|
||||||
|
|
||||||
<head>
|
|
||||||
<meta charset="UTF-8" />
|
|
||||||
<script>
|
|
||||||
var coverSupport = 'CSS' in window && typeof CSS.supports === 'function' && (CSS.supports('top: env(a)') || CSS.supports('top: constant(a)'))
|
|
||||||
document.write('<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0' + (coverSupport ? ', viewport-fit=cover' : '') + '" />')
|
|
||||||
</script>
|
|
||||||
<title></title>
|
|
||||||
<style>
|
|
||||||
html,
|
|
||||||
body {
|
|
||||||
margin: 0;
|
|
||||||
padding: 0;
|
|
||||||
position: absolute;
|
|
||||||
left: 0;
|
|
||||||
top: 0;
|
|
||||||
right: 0;
|
|
||||||
bottom: 0;
|
|
||||||
background: #ffffff;
|
|
||||||
}
|
|
||||||
|
|
||||||
* {
|
|
||||||
margin: 0;
|
|
||||||
padding: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
button,
|
|
||||||
input,
|
|
||||||
input[type=button],
|
|
||||||
input[type=reset],
|
|
||||||
input[type=search],
|
|
||||||
input[type=submit],
|
|
||||||
select {
|
|
||||||
outline: none;
|
|
||||||
-webkit-tap-highlight-color: transparent;
|
|
||||||
-webkit-appearance: none;
|
|
||||||
font-family: inherit;
|
|
||||||
border: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.hide {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.search-wrap {
|
|
||||||
position: absolute;
|
|
||||||
left: 0;
|
|
||||||
right: 0;
|
|
||||||
top: 0;
|
|
||||||
padding: 8px 60px 8px 15px;
|
|
||||||
background-color: #fff;
|
|
||||||
border-bottom: 1px solid #d3d3d3;
|
|
||||||
z-index: 100;
|
|
||||||
}
|
|
||||||
|
|
||||||
.search-wrap.init-status {
|
|
||||||
padding-right: 15px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.search-wrap .search-bar {
|
|
||||||
display: block;
|
|
||||||
height: 30px;
|
|
||||||
background-color: #ebebeb;
|
|
||||||
padding-left: 10px;
|
|
||||||
padding-right: 10px;
|
|
||||||
color: #b4b4b4;
|
|
||||||
font-size: 15px;
|
|
||||||
line-height: 31px;
|
|
||||||
border-radius: 5px;
|
|
||||||
overflow: hidden;
|
|
||||||
white-space: nowrap;
|
|
||||||
text-overflow: ellipsis;
|
|
||||||
}
|
|
||||||
|
|
||||||
.search-wrap .cancel,
|
|
||||||
.search-wrap .submit {
|
|
||||||
position: absolute;
|
|
||||||
top: 0;
|
|
||||||
right: 0;
|
|
||||||
width: 55px;
|
|
||||||
height: 46px;
|
|
||||||
line-height: 46px;
|
|
||||||
text-align: center;
|
|
||||||
font-size: 16px;
|
|
||||||
color: #0079ff;
|
|
||||||
background-color: #fff;
|
|
||||||
}
|
|
||||||
|
|
||||||
.search-wrap .clear-input {
|
|
||||||
top: 11px;
|
|
||||||
right: 60px;
|
|
||||||
width: 34px;
|
|
||||||
height: 26px;
|
|
||||||
line-height: 26px;
|
|
||||||
background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAAAPFBMVEUAAACZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZlr8OySAAAAE3RSTlMANO/H574Jw5g/soF2LxKbQCgmvcJ4rgAAAKFJREFUOMu9k1sSgyAMRcNLwbfe/e+1HZLa0DKTP8+PztwTDRDoWa4lRSCm5erGZcTNWP7iIaMhD22+BfwQtqae89bQ39jRYVf9ocu3U+5/cp4D7yZeCwkrKo7Y8O8XVFYRZilkgx+VWYQEZagcSYQIZagcUQRAGZwLpmD+wmzSXKa5UdZWW4d10E1Gh2wPjD1y9tBqSlDlB/U4PxfnpEd5AeZAIGebfob2AAAAAElFTkSuQmCC) no-repeat center center;
|
|
||||||
background-color: #ededed;
|
|
||||||
background-size: 18px 18px;
|
|
||||||
position: absolute;
|
|
||||||
padding: 0;
|
|
||||||
border: 0;
|
|
||||||
font-size: 14px;
|
|
||||||
border-radius: 4px;
|
|
||||||
text-align: center;
|
|
||||||
z-index: 2;
|
|
||||||
}
|
|
||||||
|
|
||||||
.search-wrap.init-status .cancel,
|
|
||||||
.search-wrap.init-status .clear-input,
|
|
||||||
.search-wrap.init-status .submit {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.search-wrap .search-bar .keyword {
|
|
||||||
display: block;
|
|
||||||
width: 100%;
|
|
||||||
padding-top: 6px;
|
|
||||||
padding-bottom: 6px;
|
|
||||||
border: 0;
|
|
||||||
font-size: 14px;
|
|
||||||
line-height: 18px;
|
|
||||||
background: 0 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.search-wrap.init-status .search-bar .keyword {
|
|
||||||
text-align: left;
|
|
||||||
}
|
|
||||||
|
|
||||||
.search-wrap .search-bar .keyword::-webkit-input-placeholder {
|
|
||||||
background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKAAAAAgCAMAAACioYPHAAAAaVBMVEUAAACAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICxWbJ4AAAAInRSTlMAv39AEB/f758wYFDQj3CvDPflh9qpJBYEyEc3sn1om1t4LqRQpwAABAhJREFUWMPtlumS0zAQhD26TzvXsiwsC/T7PySK5Fi+Q2Cpoij6R2w5lvSpPTNS86+Jc1kbLbfrb7WxXT4U44Y1jK/1tI3cmPnwzYTT6dK1chcQCLVB2ABk8GtdXW1IKLHWk9Ct452PuOlJ7gLexk1shGYLcGFPfbujLs0Aut+z6vMJuJw/2Q+8JeD4tg0YyizCE0gQGs+TvCjIRIZlEW43RAvAmJx8ENAfofwQBQScNwEJZQ4gdDI1kNXHJ6AoSyFQFoAFYGLYAzTspki29++I10NT9QVo9wEZ2r4h82XPh0cBAw3qRzkovH6cJiFg7wDy2vgtQPsTPc9Qh9mjJ7yswUXGFBgzloEvHYyR3USjD2XcNWn7lLJyBCi8UbgPeNDLmvB8XLMARKRBpDhDEl2npBqDBLpJ0aAAluftxQZARYDSPwH4DZcly1d8vRODnPtrw3LOw/xLO7Ba2fM9d9fXeLpcO7MYAN21dtSnMzPvzS1IzVrOfoJ6IAZngBHKiTFg7So86xSArgVNF0WYqu4IL2tV/wAcfhFQ0A3JRzEHtABULgFLwEVA9TdqNWM15CZgmzwKVAKyXIpxlKm04gU0Ako2kvExQvR5dX8SUBJc7NhVCv12MbzLCZ0ocahB/m6ZIboPGPBpyfEREBuAWrdbg0qNKkoY7wL4hO8rmzNOq3xOwyRyMR1UDL7TtRZ6pqFcalr/HoBva0X5jKflQ9kqACspx6ZHRsp4+TX3DoDPwOe94l35rigB2UimFe/loEfRIJzKeKUR4OaAYgwoQJtlpv5l8PJxYeBleFQVOjks1NfqUddiXQdow3nLskwA3ATQEauAjnQ1P4BPVSuxPOI8L9Np0qXEtBqXV1qYuoFUBUrqGNPaVsCogbYCCmgzmE803/QSex34y4TvuIzAZahQntohDHNIYi3ndrKj8v5oL/yVrnOi/zMbZJsdCTY5AL7KevoHcPpwF1AE7ZrY81Wx7sZgcyw6eUVXAEIrapJIxqYVIBdNx/NWFEvkmTrq2xFH458THT9rwIRKuASshAhzPkmA6Rm8wlDBg4py/cBCUZSYprSkkjkKmTOMj82WkHTUSLr45jkTbgPWmHPTk66GkQODYEMFkmOPx50kIPocyb+2hEVm0pOVfI4XJJ2efMrfQrgP6Agwk/3MKSg+MclWE6ssgpc9nlMwJdW6UcYZuOKqFtP9TcrDcGS9rBIKjTywT2ggmZ1X0dsCgyhmX1EQ9CIVIkYikZkLioQuF9XUMNyQvEDNFs+INFQOkiRTGFwAyjix2Cc6otHHMWZlbM+yPOclxYd9QYGXTrIsTza7hGFmH6BMqSKdq+bbGMo0ohqUUvkR8VtJ8fKBXvJly2Cx3882//UX6QfMclqph21gcgAAAABJRU5ErkJggg==);
|
|
||||||
background-repeat: no-repeat;
|
|
||||||
background-position: left center;
|
|
||||||
background-size: 80px 16px;
|
|
||||||
color: gray
|
|
||||||
}
|
|
||||||
|
|
||||||
.search-wrap.init-status .search-bar .keyword::-webkit-input-placeholder {
|
|
||||||
background-position: center center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.suggestion-wrap {
|
|
||||||
position: absolute;
|
|
||||||
top: 46px;
|
|
||||||
bottom: 0;
|
|
||||||
z-index: 7;
|
|
||||||
width: 100%;
|
|
||||||
background: #f6f6f6;
|
|
||||||
overflow: scroll;
|
|
||||||
-webkit-overflow-scrolling: touch;
|
|
||||||
}
|
|
||||||
|
|
||||||
.map-wrap {
|
|
||||||
height: 220px;
|
|
||||||
position: relative;
|
|
||||||
top: 46px;
|
|
||||||
width: 100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.list-wrap {
|
|
||||||
width: 100%;
|
|
||||||
position: absolute;
|
|
||||||
background-color: #fff;
|
|
||||||
z-index: 1;
|
|
||||||
bottom: 0;
|
|
||||||
left: 0;
|
|
||||||
overflow: hidden;
|
|
||||||
border-top: 1px solid #d3d3d3;
|
|
||||||
overflow-y: scroll;
|
|
||||||
padding-bottom: 0;
|
|
||||||
padding-bottom: constant(safe-area-inset-bottom);
|
|
||||||
padding-bottom: env(safe-area-inset-bottom);
|
|
||||||
-webkit-overflow-scrolling: touch;
|
|
||||||
}
|
|
||||||
|
|
||||||
.poi-list ul {
|
|
||||||
list-style: none;
|
|
||||||
width: 100%;
|
|
||||||
text-align: left;
|
|
||||||
padding: 0 0 65px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.suggestion-wrap li,
|
|
||||||
.active-pos,
|
|
||||||
.poi-list li {
|
|
||||||
position: relative;
|
|
||||||
display: block;
|
|
||||||
padding-left: 15px;
|
|
||||||
border: none;
|
|
||||||
height: 58px;
|
|
||||||
padding-top: 6px;
|
|
||||||
margin: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.poi-list li * {
|
|
||||||
pointer-events: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.poi-list li p,
|
|
||||||
.active-pos div p {
|
|
||||||
padding-bottom: 10px;
|
|
||||||
border-bottom: 1px solid #d3d3d3;
|
|
||||||
}
|
|
||||||
|
|
||||||
.poi-title {
|
|
||||||
font-size: 14px;
|
|
||||||
line-height: 27px;
|
|
||||||
color: #333;
|
|
||||||
font-weight: 400;
|
|
||||||
display: block;
|
|
||||||
width: 92%;
|
|
||||||
text-overflow: ellipsis;
|
|
||||||
white-space: nowrap;
|
|
||||||
overflow: hidden;
|
|
||||||
}
|
|
||||||
|
|
||||||
.poi-address {
|
|
||||||
font-size: 12px;
|
|
||||||
color: gray;
|
|
||||||
height: 20px;
|
|
||||||
line-height: 20px;
|
|
||||||
margin: 0;
|
|
||||||
width: 92%;
|
|
||||||
text-overflow: ellipsis;
|
|
||||||
white-space: nowrap;
|
|
||||||
overflow: hidden;
|
|
||||||
display: block;
|
|
||||||
}
|
|
||||||
|
|
||||||
.poi-city,
|
|
||||||
.poi-latlng {
|
|
||||||
line-height: 22px;
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.no-more-results,
|
|
||||||
.no-results {
|
|
||||||
color: gray;
|
|
||||||
padding: 20px 0;
|
|
||||||
line-height: 24px;
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
.no-more-results p,
|
|
||||||
.no-results p {
|
|
||||||
padding: 0;
|
|
||||||
margin: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.list-wrap i {
|
|
||||||
width: 16px;
|
|
||||||
height: 16px;
|
|
||||||
display: none;
|
|
||||||
background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAAAaVBMVEUAAAAAef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef8Aef84EEEWAAAAInRSTlMA+QQY6izG8NO6TphC3JReWSMoDLOfgXajf29lZEs7Hcep1l5DEAAAAPxJREFUOMuFU9cSgyAQBDSUgCVgSS/8/0cGc8E5FQdeOGaXud0rBB9mzdFYRtKnGDkVkktB+VgkYE27poCw6aheUxpxPqHn6SyaRe66NKsfpqyRll6+Njlfsp/jS1WkRFeXf/QUh6Stg3iCAHndMX6VPxltlaiMNdPXqp1iftviR+qHcN34ZJm6FO4/4XY0FOeuknhpp0jdCamHJA7GhjqQ2n2ctCpofPw8K+22OHm8I+HjvXIYj4SYYvSBwTAeU0SROjA6hnEQCTYjg2McbEKhZgbGoVC41HqJQ6lxs1iP8blZuN3WrdudG5jcyGWHNj/2+cXJr15+ebPr/wWbNBG/n/A0GgAAAABJRU5ErkJggg==) no-repeat right center;
|
|
||||||
background-size: 16px 16px;
|
|
||||||
position: absolute;
|
|
||||||
right: 15px;
|
|
||||||
top: 50%;
|
|
||||||
margin-top: -8px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.list-wrap i.active {
|
|
||||||
right: 30px;
|
|
||||||
display: inline-block;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
<div class="search-wrap init-status">
|
|
||||||
<div class="search-bar">
|
|
||||||
<form name="poi-search" id="poiSearch" onsubmit="return false;">
|
|
||||||
<input type="search" class="keyword" id="searchword" placeholder=" ">
|
|
||||||
<button type="reset" class="clear-input hide"></button>
|
|
||||||
<button type="submit" class="submit hide">搜索</button>
|
|
||||||
</form>
|
|
||||||
<a class="cancel">取消</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="suggestion-wrap hide">
|
|
||||||
<div class="poi-list">
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<div class="no-results hide">
|
|
||||||
<p>对不起,没有搜索到相关数据!</p>
|
|
||||||
</div>
|
|
||||||
<div class="no-more-results hide">
|
|
||||||
<p>亲,没有更多了~</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div id="map" class="map-wrap"></div>
|
|
||||||
<div class="list-wrap">
|
|
||||||
<div class="active-pos">
|
|
||||||
|
|
||||||
</div>
|
|
||||||
<div class="poi-list">
|
|
||||||
<ul>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<div class="no-results hide">
|
|
||||||
<p>对不起,没有搜索到相关数据!</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<script>
|
|
||||||
var loc;
|
|
||||||
var serviceWebview;
|
|
||||||
var back = function (cancel) {
|
|
||||||
if (cancel) {
|
|
||||||
plus.webview.postMessageToUniNView({
|
|
||||||
type: 'chooseLocation',
|
|
||||||
args: {
|
|
||||||
errMsg: 'cancel'
|
|
||||||
}
|
|
||||||
}, '__uniapp__service');
|
|
||||||
}
|
|
||||||
var webview = plus.webview.currentWebview()
|
|
||||||
if (webview.__uniapp_statusbar_style === 'dark') {
|
|
||||||
plus.navigator.setStatusBarStyle('dark')
|
|
||||||
}
|
|
||||||
webview.close('auto');
|
|
||||||
};
|
|
||||||
window.__chooseLocationConfirm__ = function () {
|
|
||||||
if (!loc) {
|
|
||||||
plus.nativeUI.alert('您尚未选择位置!');
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
plus.webview.postMessageToUniNView({
|
|
||||||
type: 'chooseLocation',
|
|
||||||
args: loc
|
|
||||||
}, '__uniapp__service');
|
|
||||||
back();
|
|
||||||
}
|
|
||||||
var searchWrapElem = document.querySelector('.search-wrap');
|
|
||||||
var searchWordElem = document.getElementById('searchword');
|
|
||||||
var resetElem = document.querySelector('[type="reset"]');
|
|
||||||
var cancelElem = document.querySelector('.cancel');
|
|
||||||
|
|
||||||
var suggestionWrapElem = document.querySelector('.suggestion-wrap');
|
|
||||||
var mapElem = document.getElementById('map');
|
|
||||||
var listWrapElem = document.querySelector('.list-wrap');
|
|
||||||
|
|
||||||
var suggestionPoiListElem = suggestionWrapElem.querySelector('.poi-list ul');
|
|
||||||
var suggestionPoiNoResultsElem = suggestionWrapElem.querySelector('.no-results');
|
|
||||||
var suggestionPoiNoMoreResultsElem = suggestionWrapElem.querySelector(
|
|
||||||
'.no-more-results');
|
|
||||||
|
|
||||||
var activePosElem = document.querySelector('.active-pos');
|
|
||||||
var nearbyPoiListElem = listWrapElem.querySelector('.poi-list ul');
|
|
||||||
var nearbyPoiNoResultsElem = listWrapElem.querySelector('.no-results');
|
|
||||||
|
|
||||||
listWrapElem.style.top = mapElem.offsetHeight + 47 + 'px';
|
|
||||||
|
|
||||||
|
|
||||||
var debounce = function (func, wait, immediate) {
|
|
||||||
var timeout, result;
|
|
||||||
return function () {
|
|
||||||
var context = this,
|
|
||||||
args = arguments,
|
|
||||||
later, callNow;
|
|
||||||
later = function () {
|
|
||||||
timeout = null;
|
|
||||||
if (!immediate) {
|
|
||||||
result = func.apply(context, args);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
callNow = immediate && !timeout;
|
|
||||||
clearTimeout(timeout);
|
|
||||||
timeout = setTimeout(later, wait);
|
|
||||||
if (callNow) {
|
|
||||||
result = func.apply(context, args);
|
|
||||||
}
|
|
||||||
return result;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
var plusReady = function (callback) {
|
|
||||||
if (window.plus) {
|
|
||||||
callback()
|
|
||||||
} else {
|
|
||||||
document.addEventListener('plusready', callback)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
var ZOOM = 13
|
|
||||||
window.__chooseLocation__ = function (params) {
|
|
||||||
if (params && params.keyword) {
|
|
||||||
searchWordElem.value = params.keyword;
|
|
||||||
}
|
|
||||||
plusReady(function () {
|
|
||||||
serviceWebview = plus.webview.getWebviewById('__W2A_CONTEXT_') ||
|
|
||||||
plus.webview
|
|
||||||
.getLaunchWebview();
|
|
||||||
plus.key.addEventListener('backbutton', function () {
|
|
||||||
back(true);
|
|
||||||
});
|
|
||||||
|
|
||||||
var nativeMarker = false;
|
|
||||||
|
|
||||||
var nativeMap = new plus.maps.Map('map', {
|
|
||||||
zoom: ZOOM
|
|
||||||
});
|
|
||||||
|
|
||||||
|
|
||||||
var centerPoint = false
|
|
||||||
|
|
||||||
var reverseGeocode = debounce(function (point) {
|
|
||||||
plus.maps.Map.reverseGeocode(point, {}, function (res) {
|
|
||||||
activePosElem.innerHTML =
|
|
||||||
'<div data-name="' + (res.address || '') +
|
|
||||||
'" data-address="' + (res.address || '') +
|
|
||||||
'" data-lat="' + res.coord.getLat() +
|
|
||||||
'" data-lng="' + res.coord.getLng() +
|
|
||||||
'"><h2 class="poi-title">地图位置</h2><p><span class="poi-address">' +
|
|
||||||
(res.address ||
|
|
||||||
'') +
|
|
||||||
'</span><span class="poi-latlng">' +
|
|
||||||
res.coord
|
|
||||||
.getLat() +
|
|
||||||
',' + res.coord.getLng() +
|
|
||||||
'</span><i></i></p></div>';
|
|
||||||
}, function (err) {
|
|
||||||
console.log(err);
|
|
||||||
});
|
|
||||||
searchNearbyPoi.poiSearchNearBy(searchWordElem.value || '', point, 1000);
|
|
||||||
}, 10)
|
|
||||||
|
|
||||||
|
|
||||||
nativeMap.getUserLocation(function (state, point) { //获取当前用户坐标
|
|
||||||
if (state === 0) {
|
|
||||||
nativeMarker = new plus.maps.Marker(point);
|
|
||||||
nativeMarker.setIcon('__uniappmarker@3x.png');
|
|
||||||
nativeMap.addOverlay(nativeMarker);
|
|
||||||
//centerPoint = point;
|
|
||||||
nativeMap.showUserLocation(true);
|
|
||||||
if (plus.os.name !== 'Android') {
|
|
||||||
nativeMap.setCenter(point);
|
|
||||||
}
|
|
||||||
// reverseGeocode(centerPoint);
|
|
||||||
} else {
|
|
||||||
console.log('获取用户坐标失败');
|
|
||||||
}
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
nativeMap.onstatuschanged = function (evt) { //切换坐标中心
|
|
||||||
// if (!centerPoint) {
|
|
||||||
// return;
|
|
||||||
// }
|
|
||||||
if (centerPoint && evt.center) {
|
|
||||||
if (centerPoint.latitude === evt.center.latitude &&
|
|
||||||
centerPoint.longitude === evt.center.longitude) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
centerPoint = evt.center
|
|
||||||
if (nativeMarker) {
|
|
||||||
nativeMarker.setPoint(centerPoint);
|
|
||||||
}
|
|
||||||
reverseGeocode(centerPoint);
|
|
||||||
};
|
|
||||||
|
|
||||||
var searchPoi = new plus.maps.Search(nativeMap);
|
|
||||||
var searchNearbyPoi = new plus.maps.Search(nativeMap);
|
|
||||||
|
|
||||||
var showMap = function (centerPoint) {
|
|
||||||
nativeMap.show();
|
|
||||||
if (centerPoint) {
|
|
||||||
if (nativeMarker) {
|
|
||||||
nativeMarker.setPoint(centerPoint);
|
|
||||||
}
|
|
||||||
nativeMap.setCenter(centerPoint);
|
|
||||||
// setTimeout(function() {
|
|
||||||
// nativeMap.setZoom(ZOOM);
|
|
||||||
// }, 150);
|
|
||||||
// reverseGeocode(centerPoint);
|
|
||||||
}
|
|
||||||
searchWordElem.value = '';
|
|
||||||
cancelElem.className = 'cancel hide';
|
|
||||||
searchWrapElem.className = 'search-wrap init-status';
|
|
||||||
suggestionWrapElem.className = 'suggestion-wrap hide';
|
|
||||||
resetSuggestionPoiList();
|
|
||||||
}
|
|
||||||
|
|
||||||
var resetSuggestionPoiList = function () {
|
|
||||||
suggestionPoiListElem.innerHTML = '';
|
|
||||||
suggestionPoiNoResultsElem.className = 'no-results hide';
|
|
||||||
suggestionPoiNoMoreResultsElem.className =
|
|
||||||
'no-more-results hide';
|
|
||||||
}
|
|
||||||
|
|
||||||
var showSuggestionPoiList = function () {
|
|
||||||
nativeMap.hide();
|
|
||||||
resetSuggestionPoiList();
|
|
||||||
}
|
|
||||||
|
|
||||||
var showSuggestionPoiNoResults = function () {
|
|
||||||
suggestionPoiListElem.innerHTML = '';
|
|
||||||
suggestionPoiNoResultsElem.className = 'no-results';
|
|
||||||
suggestionPoiNoMoreResultsElem.className =
|
|
||||||
'no-more-results hide';
|
|
||||||
}
|
|
||||||
|
|
||||||
var renderPoiResults = function (poiList) {
|
|
||||||
var html = [];
|
|
||||||
for (var i = 0; i < poiList.length; i++) {
|
|
||||||
var poi = poiList[i];
|
|
||||||
if (poi.point) {
|
|
||||||
html.push('<li data-name="' + (poi.name || '') +
|
|
||||||
'" data-address="' + (poi.address || '') +
|
|
||||||
'" data-lat="' + poi.point.getLat() +
|
|
||||||
'" data-lng="' + poi.point.getLng() +
|
|
||||||
'"><p><span class="poi-title">' + poi.name +
|
|
||||||
'</span><span class="poi-address">' + (poi.address ||
|
|
||||||
'') +
|
|
||||||
'</span><span class="poi-latlng">' + poi.point
|
|
||||||
.getLat() +
|
|
||||||
',' + poi.point.getLng() +
|
|
||||||
'</span><span class="poi-city">' + poi.city +
|
|
||||||
'</span></p><i></i></li>');
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return html.join('');
|
|
||||||
}
|
|
||||||
var showNearbyPoiNoResults = function () {
|
|
||||||
nearbyPoiListElem.innerHTML = '';
|
|
||||||
nearbyPoiNoResultsElem.className = 'no-results';
|
|
||||||
}
|
|
||||||
var showNearbyPoiResults = function (poiList) {
|
|
||||||
var html = renderPoiResults(poiList);
|
|
||||||
if (html) {
|
|
||||||
nearbyPoiListElem.innerHTML = html;
|
|
||||||
nearbyPoiNoResultsElem.className = 'no-results hide';
|
|
||||||
} else {
|
|
||||||
showNearbyPoiNoResults();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
var showSuggestionPoiResults = function (poiList) {
|
|
||||||
var html = renderPoiResults(poiList);
|
|
||||||
if (html) {
|
|
||||||
suggestionPoiListElem.innerHTML = html;
|
|
||||||
suggestionPoiNoResultsElem.className =
|
|
||||||
'no-results hide';
|
|
||||||
suggestionPoiNoMoreResultsElem.className =
|
|
||||||
'no-more-results';
|
|
||||||
} else {
|
|
||||||
showSuggestionPoiNoResults();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
searchPoi.onPoiSearchComplete = function (state, res) {
|
|
||||||
if (state === 0) {
|
|
||||||
if (res.poiList.length) {
|
|
||||||
showSuggestionPoiResults(res.poiList);
|
|
||||||
} else {
|
|
||||||
showSuggestionPoiNoResults();
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
showSuggestionPoiNoResults();
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
searchNearbyPoi.onPoiSearchComplete = function (state, res) {
|
|
||||||
if (state === 0) {
|
|
||||||
if (res.poiList.length) {
|
|
||||||
showNearbyPoiResults(res.poiList);
|
|
||||||
} else {
|
|
||||||
showNearbyPoiNoResults();
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
showNearbyPoiNoResults();
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
var getSuggestion = debounce(function (q) {
|
|
||||||
if (q.trim()) {
|
|
||||||
searchPoi.poiSearchNearBy(q, centerPoint, 50000)
|
|
||||||
} else { }
|
|
||||||
}, 10);
|
|
||||||
|
|
||||||
suggestionPoiListElem.addEventListener('click', function (evt) {
|
|
||||||
var target = evt.target;
|
|
||||||
for (; target && target !== suggestionPoiListElem; target =
|
|
||||||
target.parentNode) {
|
|
||||||
if (target && target.tagName === 'LI') {
|
|
||||||
var laglng = target.querySelector('.poi-latlng')
|
|
||||||
.innerText
|
|
||||||
.split(',');
|
|
||||||
centerPoint = new plus.maps.Point(Number(laglng[1]), Number(laglng[
|
|
||||||
0]));
|
|
||||||
showMap(centerPoint);
|
|
||||||
reverseGeocode(centerPoint);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
searchWordElem.addEventListener('click', function () {
|
|
||||||
searchWrapElem.className = 'search-wrap';
|
|
||||||
suggestionWrapElem.className = 'suggestion-wrap';
|
|
||||||
cancelElem.className = 'cancel';
|
|
||||||
showSuggestionPoiList();
|
|
||||||
});
|
|
||||||
|
|
||||||
var oldHasValue = false;
|
|
||||||
|
|
||||||
var setInputState = function (hasValue) {
|
|
||||||
if (hasValue !== oldHasValue) {
|
|
||||||
if (hasValue) {
|
|
||||||
resetElem.className = 'clear-input'
|
|
||||||
} else {
|
|
||||||
resetElem.className = 'clear-input hide'
|
|
||||||
}
|
|
||||||
oldHasValue = hasValue;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
searchWordElem.addEventListener('input', function () {
|
|
||||||
var value = this.value.replace(/^\s+|\s+$/g, '');
|
|
||||||
setInputState(!!value);
|
|
||||||
getSuggestion(value);
|
|
||||||
});
|
|
||||||
|
|
||||||
resetElem.addEventListener('click', function (e) {
|
|
||||||
setInputState(false);
|
|
||||||
setTimeout(function () {
|
|
||||||
searchWordElem.focus();
|
|
||||||
}, 0);
|
|
||||||
});
|
|
||||||
cancelElem.addEventListener('click', function () {
|
|
||||||
showMap();
|
|
||||||
});
|
|
||||||
|
|
||||||
listWrapElem.addEventListener('click', function (e) {
|
|
||||||
var target = e.target;
|
|
||||||
for (; target && target !== listWrapElem; target =
|
|
||||||
target.parentNode) {
|
|
||||||
if (target.className === 'active-pos' || target.tagName ===
|
|
||||||
'LI') {
|
|
||||||
var lastActiveElem = listWrapElem.querySelector(
|
|
||||||
'i.active');
|
|
||||||
if (lastActiveElem) {
|
|
||||||
lastActiveElem.className = '';
|
|
||||||
}
|
|
||||||
if (target.className === 'active-pos') {
|
|
||||||
target = target.children[0]
|
|
||||||
}
|
|
||||||
target.querySelector('i').className = 'active';
|
|
||||||
loc = {
|
|
||||||
poiname: target.getAttribute('data-name'),
|
|
||||||
poiaddress: target.getAttribute(
|
|
||||||
'data-address'),
|
|
||||||
latlng: {
|
|
||||||
lat: target.getAttribute(
|
|
||||||
'data-lat'),
|
|
||||||
lng: target.getAttribute(
|
|
||||||
'data-lng'),
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (nativeMarker) {
|
|
||||||
nativeMarker.setPoint(new plus.maps.Point(
|
|
||||||
loc.latlng.lng, loc.latlng.lat));
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
||||||
|
|
||||||
});
|
|
||||||
};
|
|
||||||
</script>
|
|
||||||
</body>
|
|
||||||
|
|
||||||
</html>
|
|
||||||
1
unpackage/dist/dev/app-plus/__uniappes6.js
vendored
@@ -1,284 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html lang="zh-CN">
|
|
||||||
|
|
||||||
<head>
|
|
||||||
<meta charset="UTF-8" />
|
|
||||||
<script>
|
|
||||||
var coverSupport = 'CSS' in window && typeof CSS.supports === 'function' && (CSS.supports('top: env(a)') || CSS.supports('top: constant(a)'))
|
|
||||||
document.write('<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0' + (coverSupport ? ', viewport-fit=cover' : '') + '" />')
|
|
||||||
</script>
|
|
||||||
<title></title>
|
|
||||||
<style>
|
|
||||||
html,
|
|
||||||
body,
|
|
||||||
.container {
|
|
||||||
margin: 0;
|
|
||||||
padding: 0;
|
|
||||||
position: absolute;
|
|
||||||
left: 0;
|
|
||||||
top: 0;
|
|
||||||
right: 0;
|
|
||||||
bottom: 0;
|
|
||||||
background: #ffffff;
|
|
||||||
}
|
|
||||||
|
|
||||||
#map {
|
|
||||||
position: absolute;
|
|
||||||
left: 0;
|
|
||||||
top: 0;
|
|
||||||
right: 0;
|
|
||||||
bottom: 80px;
|
|
||||||
bottom: calc(80px + constant(safe-area-inset-bottom));
|
|
||||||
bottom: calc(80px + env(safe-area-inset-bottom));
|
|
||||||
}
|
|
||||||
|
|
||||||
#poi {
|
|
||||||
position: absolute;
|
|
||||||
left: 0;
|
|
||||||
right: 0;
|
|
||||||
bottom: 0;
|
|
||||||
bottom: constant(safe-area-inset-bottom);
|
|
||||||
bottom: env(safe-area-inset-bottom);
|
|
||||||
height: 80px;
|
|
||||||
background: #FFFFFF;
|
|
||||||
}
|
|
||||||
|
|
||||||
.poi-info {
|
|
||||||
width: 100%;
|
|
||||||
padding: 23px 16px 23px 18px;
|
|
||||||
box-sizing: border-box;
|
|
||||||
background: #FFFFFF;
|
|
||||||
}
|
|
||||||
|
|
||||||
.poi-name {
|
|
||||||
font-size: 17px;
|
|
||||||
line-height: 17px;
|
|
||||||
color: #111111;
|
|
||||||
display: block;
|
|
||||||
margin-right: 70px;
|
|
||||||
word-wrap: break-word;
|
|
||||||
}
|
|
||||||
|
|
||||||
.poi-addr {
|
|
||||||
font-size: 13px;
|
|
||||||
line-height: 13px;
|
|
||||||
color: #666666;
|
|
||||||
display: block;
|
|
||||||
margin-top: 4px;
|
|
||||||
margin-right: 70px;
|
|
||||||
word-wrap: break-word;
|
|
||||||
}
|
|
||||||
|
|
||||||
.poi-nav {
|
|
||||||
display: block;
|
|
||||||
position: absolute;
|
|
||||||
top: 10px;
|
|
||||||
right: 16px;
|
|
||||||
width: 60px;
|
|
||||||
height: 60px;
|
|
||||||
border-radius: 60px;
|
|
||||||
overflow: hidden;
|
|
||||||
}
|
|
||||||
|
|
||||||
.poi-nav i,
|
|
||||||
.poi-nav span {
|
|
||||||
position: absolute;
|
|
||||||
top: 0;
|
|
||||||
width: 100%;
|
|
||||||
height: 100%;
|
|
||||||
display: inline-block;
|
|
||||||
border-radius: 60px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.poi-nav i {
|
|
||||||
background: url(data:image/png;base64,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) no-repeat;
|
|
||||||
background-size: 100%;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
<div id="container" class="container">
|
|
||||||
<div id="map"></div>
|
|
||||||
<div id="poi">
|
|
||||||
<div class="poi-info">
|
|
||||||
<span class="poi-name"></span>
|
|
||||||
<span class="poi-addr"></span>
|
|
||||||
<div class="poi-nav">
|
|
||||||
<i></i>
|
|
||||||
<span></span>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<script>
|
|
||||||
var loc;
|
|
||||||
var serviceWebview;
|
|
||||||
var back = function() {
|
|
||||||
var webview = plus.webview.currentWebview()
|
|
||||||
if (webview.__uniapp_statusbar_style === 'light') {
|
|
||||||
plus.navigator.setStatusBarStyle('light')
|
|
||||||
}
|
|
||||||
webview.close('auto');
|
|
||||||
};
|
|
||||||
|
|
||||||
var isIos = !!navigator.userAgent.match(/iPhone|iPad|iPod/i);
|
|
||||||
|
|
||||||
document.addEventListener('plusready', function() {
|
|
||||||
serviceWebview = plus.webview.getWebviewById('__W2A_CONTEXT_') || plus.webview.getLaunchWebview();
|
|
||||||
plus.key.addEventListener('backbutton', back);
|
|
||||||
|
|
||||||
|
|
||||||
})
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 调用系统第三方程序进行导航
|
|
||||||
*/
|
|
||||||
function openSysMap(lat, lng, title) {
|
|
||||||
/**
|
|
||||||
* 网页版地图源
|
|
||||||
*/
|
|
||||||
var mapsSourceWeb = [
|
|
||||||
{
|
|
||||||
title: '腾讯地图网页版',
|
|
||||||
getUrl: function() {
|
|
||||||
var url
|
|
||||||
url = 'https://apis.map.qq.com/uri/v1/routeplan?type=drive' + '&to=' +
|
|
||||||
encodeURIComponent(title) + '&tocoord=' + encodeURIComponent(lat + ',' + lng) +
|
|
||||||
'&referer=APP'
|
|
||||||
return url
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
/**
|
|
||||||
* APP版地图源
|
|
||||||
*/
|
|
||||||
var mapsSource = [
|
|
||||||
{
|
|
||||||
title: '高德地图',
|
|
||||||
pname: 'com.autonavi.minimap',
|
|
||||||
action: !isIos ? 'amapuri://' : 'iosamap://',
|
|
||||||
getUrl: function() {
|
|
||||||
var url
|
|
||||||
if (!isIos) {
|
|
||||||
url = 'amapuri://route/plan/'
|
|
||||||
} else {
|
|
||||||
url = 'iosamap://path'
|
|
||||||
}
|
|
||||||
url += '?sourceApplication=APP&dname=' + encodeURIComponent(title) + '&dlat=' + lat +
|
|
||||||
'&dlon=' + lng + '&dev=0'
|
|
||||||
return url
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title: '百度地图',
|
|
||||||
pname: 'com.baidu.BaiduMap',
|
|
||||||
action: 'baidumap://',
|
|
||||||
getUrl: function() {
|
|
||||||
var url = 'baidumap://map/direction?destination=' + encodeURIComponent('latlng:' + lat +
|
|
||||||
',' + lng + '|name:' + title) + '&mode=driving&src=APP&coord_type=gcj02'
|
|
||||||
return url
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
title: '腾讯地图',
|
|
||||||
pname: 'com.tencent.map',
|
|
||||||
action: 'qqmap://',
|
|
||||||
getUrl: function() {
|
|
||||||
var url
|
|
||||||
url = 'qqmap://map/routeplan?type=drive' + (isIos ? ('&from=' + encodeURIComponent(
|
|
||||||
'我的位置')) : '') + '&to=' + encodeURIComponent(title) + '&tocoord=' +
|
|
||||||
encodeURIComponent(lat + ',' + lng) + '&referer=APP'
|
|
||||||
return url
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
var maps = []
|
|
||||||
mapsSource.forEach(function(mapsSource) {
|
|
||||||
var installed = plus.runtime.isApplicationExist({
|
|
||||||
pname: mapsSource.pname,
|
|
||||||
action: mapsSource.action,
|
|
||||||
})
|
|
||||||
if (installed) {
|
|
||||||
maps.push(mapsSource)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
if (isIos) {
|
|
||||||
maps.unshift({
|
|
||||||
title: 'Apple 地图',
|
|
||||||
getUrl: function() {
|
|
||||||
var url
|
|
||||||
url = 'https://maps.apple.com/?daddr=' + encodeURIComponent(title) + '&sll=' +
|
|
||||||
encodeURIComponent(lat + ',' + lng)
|
|
||||||
return url
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
|
||||||
if (maps.length === 0) {
|
|
||||||
maps = maps.concat(mapsSourceWeb)
|
|
||||||
}
|
|
||||||
plus.nativeUI.actionSheet({
|
|
||||||
title: '导航方式',
|
|
||||||
cancel: '取消',
|
|
||||||
buttons: maps,
|
|
||||||
}, function(res) {
|
|
||||||
var index = res.index
|
|
||||||
var map
|
|
||||||
if (index > 0) {
|
|
||||||
map = maps[index - 1]
|
|
||||||
plus.runtime.openURL(map.getUrl(), function() { }, map.pname)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
var ZOOM = 13
|
|
||||||
window.__openLocation__ = function(params) {
|
|
||||||
var mapElem = document.getElementById('map');
|
|
||||||
var poiNameElem = document.querySelector('.poi-name');
|
|
||||||
var poiAddrElem = document.querySelector('.poi-addr');
|
|
||||||
var poiNavElem = document.querySelector('.poi-nav');
|
|
||||||
var latitude = params.latitude;
|
|
||||||
var longitude = params.longitude;
|
|
||||||
var scale = params.scale;
|
|
||||||
var name = params.name;
|
|
||||||
var address = params.address;
|
|
||||||
var point = new plus.maps.Point(longitude, latitude);
|
|
||||||
var map = plus.maps.create('map', {
|
|
||||||
center: point,
|
|
||||||
zoom: scale || ZOOM,
|
|
||||||
top: 0,
|
|
||||||
left: 0,
|
|
||||||
width: mapElem.offsetWidth,
|
|
||||||
height: mapElem.offsetHeight
|
|
||||||
|
|
||||||
});
|
|
||||||
var marker = new plus.maps.Marker(point);
|
|
||||||
marker.setIcon('__uniappmarker@3x.png');
|
|
||||||
if (name) {
|
|
||||||
poiNameElem.innerText = name;
|
|
||||||
// marker.setLabel(name);
|
|
||||||
}
|
|
||||||
if (address) {
|
|
||||||
poiAddrElem.innerText = address;
|
|
||||||
// var bubble = new plus.maps.Bubble(address);
|
|
||||||
// marker.setBubble(bubble);
|
|
||||||
}
|
|
||||||
map.addOverlay(marker);
|
|
||||||
plus.webview.currentWebview().append(map);
|
|
||||||
var userPoint = false
|
|
||||||
map.getUserLocation(function(state, point) {
|
|
||||||
if (state) {
|
|
||||||
plus.nativeUI.toast('定位失败!');
|
|
||||||
} else {
|
|
||||||
userPoint = point;
|
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
||||||
poiNavElem.addEventListener('click', function() {
|
|
||||||
openSysMap(latitude, longitude, name)
|
|
||||||
});
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
</body>
|
|
||||||
|
|
||||||
</html>
|
|
||||||
10
unpackage/dist/dev/app-plus/__uniapppicker.html
vendored
8
unpackage/dist/dev/app-plus/__uniappquill.js
vendored
149
unpackage/dist/dev/app-plus/__uniappscan.html
vendored
@@ -1,149 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html lang="zh-CN">
|
|
||||||
|
|
||||||
<head>
|
|
||||||
<meta charset="UTF-8" />
|
|
||||||
<script>
|
|
||||||
var coverSupport = 'CSS' in window && typeof CSS.supports === 'function' && (CSS.supports('top: env(a)') ||
|
|
||||||
CSS.supports(
|
|
||||||
'top: constant(a)'))
|
|
||||||
document.write(
|
|
||||||
'<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0' +
|
|
||||||
(coverSupport ? ', viewport-fit=cover' : '') + '" />')
|
|
||||||
</script>
|
|
||||||
<title>Scan code</title>
|
|
||||||
<style>
|
|
||||||
html,
|
|
||||||
body,
|
|
||||||
.container {
|
|
||||||
margin: 0;
|
|
||||||
padding: 0;
|
|
||||||
position: absolute;
|
|
||||||
left: 0;
|
|
||||||
top: 0;
|
|
||||||
right: 0;
|
|
||||||
bottom: 0;
|
|
||||||
background: #000000;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
<div id="scan" class="container">
|
|
||||||
</div>
|
|
||||||
<script>
|
|
||||||
var scan;
|
|
||||||
var lightImg;
|
|
||||||
var lightView;
|
|
||||||
var back = function(cancel) {
|
|
||||||
if (cancel) {
|
|
||||||
plus.webview.postMessageToUniNView({
|
|
||||||
type: 'scanCode',
|
|
||||||
args: {
|
|
||||||
errMsg: 'cancel'
|
|
||||||
}
|
|
||||||
}, '__uniapp__service');
|
|
||||||
}
|
|
||||||
lightImg && lightImg.clear();
|
|
||||||
lightView && lightView.clear();
|
|
||||||
scan && scan.close();
|
|
||||||
var webview = plus.webview.currentWebview();
|
|
||||||
if (webview.__uniapp_dark) {
|
|
||||||
plus.navigator.setStatusBarStyle('dark');
|
|
||||||
}
|
|
||||||
webview.close('auto');
|
|
||||||
}
|
|
||||||
/**
|
|
||||||
* 绘制照亮开关
|
|
||||||
*/
|
|
||||||
function drawLight() {
|
|
||||||
var offImg =
|
|
||||||
'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAABjklEQVRoQ+1ZbVHEQAx9TwE4ABTcOQAknANQAKcAUAAOAAXgAHAACsDCKQiTmbYDzJZtNt2bFrJ/m6+Xl2yyU2LmhzOPH/8PgIjcADirxNyapNoffMwMiMgzgMPBHmyCLySPLCoBwJKtAbJbYaBmD1yRvBwAtBMxl5DF+DZkiwCIyBLAzsgBbki+Wm2WAlCaL6zOMvKnJO+sNksB7ALQbO1ZHfbIv5FUVs2nCIB6EZETALdmj2mFY5I6X8ynGEADQllYmL1+VzBfnV/VvQB0aj45ARyQ/Ci14QLQsOBZLe5JaikWnzEA7AN4L4hgA2Dpyb76dANwsOCq/TZhASAYKGie0a7R1lDPI0ebtF0NUi+4yfdAtxr3PEMnD6BbD0QkNfACQO05EAwMuaBqDrIVycdmTpwDuP4R0OR7QFftVRP0g+49cwOQq4DJMxAAchmofY3m/EcJBQOZbTRKKJeBKKEoIePvpFRJ1VzmciUccyCa+C81cerBkuuB7sGTE/zt+yhN7AnAqxsAvBn06n8CkyPwMZKwm+UAAAAASUVORK5CYII=';
|
|
||||||
var onImg =
|
|
||||||
'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAB4klEQVRoQ+1ZQU7CUBCdaWVBLFETqUtxB7iQG4hH4AZ4AvUE4gnkBuoJ9AbiDXAhZadby4IQICaS9psqJBVLy5/fkhKHbefPzPvzZv6bgLDmP1zz/OH/ARjZpSYAniVSORQXRt5qyviWrsDQLrUQ8FgmyLK2AsRTzrSqy9p7dgxA5raibFdSgSR7QAi4yu11GlFA/d+lKSTjfBW2JAAj+7Cio7MVZ4KO0AeG+dKW9UkCMHwvNxDhUjZYuL17apjdW1mfJACiX9gef2bbgLgvG3CB/bNhdioUXyQAXqCRXawDaDeUoPNnBLonuXy3RfFFBvADouxx9ogSeHaGMjpjm0LDXrGKQntUAaBn3IPsTveN6kOpAl5QNWkh7gzTqlOTJ0mJ+WAf/WLBmWivskkIEIONjKio3H4sAKhVUOX+7MKUKcQAZLk3Z88VWEQhr0kRYCoN/m5wqe8BvzQOkuDpB+CTB0EPHgOYNnNiTewXaFyBkFGbWAVQE7XNXevhW7X2Sucg8NqfR+p7AADaesateUk7E+0eAH4tLOsAIPSNZQBJT6EoicMV4Ar4OEJZK5lCTCGmkPy/MUGjOTEtxO9A1A1wE3MTp6iJgxaWKAr7F54o27DvsUwhlQRUzzIA1RtUPf8FRKRYQOI+9hQAAAAASUVORK5CYII=';
|
|
||||||
var webview = plus.webview.currentWebview();
|
|
||||||
var en = webview.__uniapp_locale && webview.__uniapp_locale.indexOf('zh') < 0
|
|
||||||
var onText = en ? '' : '轻触照亮';
|
|
||||||
var offText = en ? '' : '轻触关闭';
|
|
||||||
var on = false;
|
|
||||||
var viewWidth = 48;
|
|
||||||
var fontSize = 10;
|
|
||||||
var imgWidth = 26;
|
|
||||||
|
|
||||||
function changeType() {
|
|
||||||
lightView.reset();
|
|
||||||
lightImg.loadBase64Data(on ? onImg : offImg, function() {
|
|
||||||
lightView.drawBitmap(lightImg, {}, {
|
|
||||||
top: 0,
|
|
||||||
left: (viewWidth - imgWidth) / 2 + 'px',
|
|
||||||
width: imgWidth + 'px',
|
|
||||||
height: imgWidth + 'px'
|
|
||||||
});
|
|
||||||
});
|
|
||||||
lightView.drawText(on ? offText : onText, {
|
|
||||||
top: imgWidth + 'px',
|
|
||||||
left: '0px',
|
|
||||||
width: '100%',
|
|
||||||
height: (fontSize + 2) + 'px'
|
|
||||||
}, {
|
|
||||||
color: '#ffffff',
|
|
||||||
size: fontSize + 'px'
|
|
||||||
});
|
|
||||||
scan.setFlash(on);
|
|
||||||
on = !on;
|
|
||||||
}
|
|
||||||
lightImg = new plus.nativeObj.Bitmap('lightImg');
|
|
||||||
lightView = new plus.nativeObj.View('lightView', {
|
|
||||||
width: viewWidth + 'px',
|
|
||||||
height: viewWidth + 'px',
|
|
||||||
top: window.innerHeight / 2 + 50 + 'px',
|
|
||||||
left: (window.innerWidth - viewWidth) / 2 + 'px',
|
|
||||||
position: 'static'
|
|
||||||
});
|
|
||||||
lightView.addEventListener('click', function() {
|
|
||||||
changeType();
|
|
||||||
});
|
|
||||||
plus.webview.currentWebview().append(lightView);
|
|
||||||
changeType();
|
|
||||||
}
|
|
||||||
document.addEventListener('plusready', function() {
|
|
||||||
var serviceWebview = plus.webview.getWebviewById('__W2A_CONTEXT_') || plus.webview.getLaunchWebview();
|
|
||||||
plus.key.addEventListener('backbutton', function() {
|
|
||||||
back(true);
|
|
||||||
});
|
|
||||||
setTimeout(function() {
|
|
||||||
var webview = plus.webview.currentWebview();
|
|
||||||
scan = new plus.barcode.Barcode('scan', webview.__uniapp_scan_type, {
|
|
||||||
frameColor: '#118CE9',
|
|
||||||
scanbarColor: '#118CE9'
|
|
||||||
}, webview.__uniapp_auto_decode_char_set);
|
|
||||||
scan.onmarked = function(type, code, file, charSet) {
|
|
||||||
var res = {
|
|
||||||
type: type,
|
|
||||||
code: code,
|
|
||||||
charSet: charSet
|
|
||||||
};
|
|
||||||
back()
|
|
||||||
plus.webview.postMessageToUniNView({
|
|
||||||
type: 'scanCode',
|
|
||||||
args: res
|
|
||||||
}, '__uniapp__service');
|
|
||||||
};
|
|
||||||
scan.onerror = function(error) {
|
|
||||||
back()
|
|
||||||
plus.webview.postMessageToUniNView({
|
|
||||||
type: 'scanCode',
|
|
||||||
args: {
|
|
||||||
errMsg: error.message + ' error code:' + error.code
|
|
||||||
}
|
|
||||||
}, '__uniapp__service');
|
|
||||||
};
|
|
||||||
|
|
||||||
scan.start();
|
|
||||||
drawLight();
|
|
||||||
}, 500)
|
|
||||||
})
|
|
||||||
</script>
|
|
||||||
</body>
|
|
||||||
|
|
||||||
</html>
|
|
||||||
BIN
unpackage/dist/dev/app-plus/__uniappsuccess.png
vendored
|
Before Width: | Height: | Size: 2.0 KiB |
25
unpackage/dist/dev/app-plus/__uniappview.html
vendored
@@ -1,25 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html lang="zh-CN">
|
|
||||||
|
|
||||||
<head>
|
|
||||||
<meta charset="UTF-8" />
|
|
||||||
<script>
|
|
||||||
var __UniViewStartTime__ = Date.now();
|
|
||||||
var coverSupport = 'CSS' in window && typeof CSS.supports === 'function' && (CSS.supports('top: env(a)') ||
|
|
||||||
CSS.supports('top: constant(a)'))
|
|
||||||
document.write(
|
|
||||||
'<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0' +
|
|
||||||
(coverSupport ? ', viewport-fit=cover' : '') + '" />')
|
|
||||||
</script>
|
|
||||||
<title>View</title>
|
|
||||||
<link rel="stylesheet" href="view.css" />
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
<div id="app"></div>
|
|
||||||
<script src="__uniappes6.js"></script>
|
|
||||||
<script src="view.umd.min.js"></script>
|
|
||||||
<script src="app-view.js"></script>
|
|
||||||
</body>
|
|
||||||
|
|
||||||
</html>
|
|
||||||
22
unpackage/dist/dev/app-plus/androidPrivacy.json
vendored
@@ -1,22 +0,0 @@
|
|||||||
{
|
|
||||||
"version" : "1",
|
|
||||||
"prompt" : "template",
|
|
||||||
"title" : "服务协议和隐私政策",
|
|
||||||
"message" : "尊敬的用户,感谢您信任并使用众妙之门!<br/> <br/> 众妙之门非常重视您的隐私保护和个人信息保护,在您使用众妙之门提供的产品或服务前,请您务必审慎阅读、充分理解“用户协议”和“隐私政策”各条款,包括但不限于:为了更好的向您提供服务,我们需要收集您的设备标识、操作日志等信息用于分析、优化应用性能。<br/> 您可阅读<a href='https://zmzm.taihumed.com/agreement.html'> 《用户协议》 </a>和<a href='https://zmzm.taihumed.com/privacy.html'>《隐私政策》 </a> 的全部条款,众妙之门可能会收集您的相关使用信息、个人信息。未经授权,众妙之门不会向任何第三方提供您的信息。如果您同意,请点击下面按钮开始接受我们的服务。",
|
|
||||||
"buttonAccept" : "同意并接受",
|
|
||||||
"buttonRefuse" : "暂不同意",
|
|
||||||
"hrefLoader" : "system",
|
|
||||||
"backToExit" : "false",
|
|
||||||
"second" : {
|
|
||||||
"title" : "确认提示",
|
|
||||||
"message" : "进入应用前,您需先同意<a href='https://zmzm.taihumed.com/agreement.html'> 《用户协议》 </a>和 <a href='https://zmzm.taihumed.com/privacy.html'>《隐私政策》 </a>,否则将退出应用。 ",
|
|
||||||
"buttonAccept" : "同意并继续",
|
|
||||||
"buttonRefuse" : "退出应用"
|
|
||||||
},
|
|
||||||
"disagreeMode" : {
|
|
||||||
"support" : false,
|
|
||||||
"loadNativePlugins" : false,
|
|
||||||
"visitorEntry" : false,
|
|
||||||
"showAlways" : false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
154
unpackage/dist/dev/app-plus/app-config.js
vendored
@@ -1,154 +0,0 @@
|
|||||||
/******/ (function(modules) { // webpackBootstrap
|
|
||||||
/******/ // install a JSONP callback for chunk loading
|
|
||||||
/******/ function webpackJsonpCallback(data) {
|
|
||||||
/******/ var chunkIds = data[0];
|
|
||||||
/******/ var moreModules = data[1];
|
|
||||||
/******/ var executeModules = data[2];
|
|
||||||
/******/
|
|
||||||
/******/ // add "moreModules" to the modules object,
|
|
||||||
/******/ // then flag all "chunkIds" as loaded and fire callback
|
|
||||||
/******/ var moduleId, chunkId, i = 0, resolves = [];
|
|
||||||
/******/ for(;i < chunkIds.length; i++) {
|
|
||||||
/******/ chunkId = chunkIds[i];
|
|
||||||
/******/ if(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {
|
|
||||||
/******/ resolves.push(installedChunks[chunkId][0]);
|
|
||||||
/******/ }
|
|
||||||
/******/ installedChunks[chunkId] = 0;
|
|
||||||
/******/ }
|
|
||||||
/******/ for(moduleId in moreModules) {
|
|
||||||
/******/ if(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {
|
|
||||||
/******/ modules[moduleId] = moreModules[moduleId];
|
|
||||||
/******/ }
|
|
||||||
/******/ }
|
|
||||||
/******/ if(parentJsonpFunction) parentJsonpFunction(data);
|
|
||||||
/******/
|
|
||||||
/******/ while(resolves.length) {
|
|
||||||
/******/ resolves.shift()();
|
|
||||||
/******/ }
|
|
||||||
/******/
|
|
||||||
/******/ // add entry modules from loaded chunk to deferred list
|
|
||||||
/******/ deferredModules.push.apply(deferredModules, executeModules || []);
|
|
||||||
/******/
|
|
||||||
/******/ // run deferred modules when all chunks ready
|
|
||||||
/******/ return checkDeferredModules();
|
|
||||||
/******/ };
|
|
||||||
/******/ function checkDeferredModules() {
|
|
||||||
/******/ var result;
|
|
||||||
/******/ for(var i = 0; i < deferredModules.length; i++) {
|
|
||||||
/******/ var deferredModule = deferredModules[i];
|
|
||||||
/******/ var fulfilled = true;
|
|
||||||
/******/ for(var j = 1; j < deferredModule.length; j++) {
|
|
||||||
/******/ var depId = deferredModule[j];
|
|
||||||
/******/ if(installedChunks[depId] !== 0) fulfilled = false;
|
|
||||||
/******/ }
|
|
||||||
/******/ if(fulfilled) {
|
|
||||||
/******/ deferredModules.splice(i--, 1);
|
|
||||||
/******/ result = __webpack_require__(__webpack_require__.s = deferredModule[0]);
|
|
||||||
/******/ }
|
|
||||||
/******/ }
|
|
||||||
/******/
|
|
||||||
/******/ return result;
|
|
||||||
/******/ }
|
|
||||||
/******/
|
|
||||||
/******/ // The module cache
|
|
||||||
/******/ var installedModules = {};
|
|
||||||
/******/
|
|
||||||
/******/ // object to store loaded and loading chunks
|
|
||||||
/******/ // undefined = chunk not loaded, null = chunk preloaded/prefetched
|
|
||||||
/******/ // Promise = chunk loading, 0 = chunk loaded
|
|
||||||
/******/ var installedChunks = {
|
|
||||||
/******/ "app-config": 0
|
|
||||||
/******/ };
|
|
||||||
/******/
|
|
||||||
/******/ var deferredModules = [];
|
|
||||||
/******/
|
|
||||||
/******/ // The require function
|
|
||||||
/******/ function __webpack_require__(moduleId) {
|
|
||||||
/******/
|
|
||||||
/******/ // Check if module is in cache
|
|
||||||
/******/ if(installedModules[moduleId]) {
|
|
||||||
/******/ return installedModules[moduleId].exports;
|
|
||||||
/******/ }
|
|
||||||
/******/ // Create a new module (and put it into the cache)
|
|
||||||
/******/ var module = installedModules[moduleId] = {
|
|
||||||
/******/ i: moduleId,
|
|
||||||
/******/ l: false,
|
|
||||||
/******/ exports: {}
|
|
||||||
/******/ };
|
|
||||||
/******/
|
|
||||||
/******/ // Execute the module function
|
|
||||||
/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
|
|
||||||
/******/
|
|
||||||
/******/ // Flag the module as loaded
|
|
||||||
/******/ module.l = true;
|
|
||||||
/******/
|
|
||||||
/******/ // Return the exports of the module
|
|
||||||
/******/ return module.exports;
|
|
||||||
/******/ }
|
|
||||||
/******/
|
|
||||||
/******/
|
|
||||||
/******/ // expose the modules object (__webpack_modules__)
|
|
||||||
/******/ __webpack_require__.m = modules;
|
|
||||||
/******/
|
|
||||||
/******/ // expose the module cache
|
|
||||||
/******/ __webpack_require__.c = installedModules;
|
|
||||||
/******/
|
|
||||||
/******/ // define getter function for harmony exports
|
|
||||||
/******/ __webpack_require__.d = function(exports, name, getter) {
|
|
||||||
/******/ if(!__webpack_require__.o(exports, name)) {
|
|
||||||
/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
|
|
||||||
/******/ }
|
|
||||||
/******/ };
|
|
||||||
/******/
|
|
||||||
/******/ // define __esModule on exports
|
|
||||||
/******/ __webpack_require__.r = function(exports) {
|
|
||||||
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
|
|
||||||
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
||||||
/******/ }
|
|
||||||
/******/ Object.defineProperty(exports, '__esModule', { value: true });
|
|
||||||
/******/ };
|
|
||||||
/******/
|
|
||||||
/******/ // create a fake namespace object
|
|
||||||
/******/ // mode & 1: value is a module id, require it
|
|
||||||
/******/ // mode & 2: merge all properties of value into the ns
|
|
||||||
/******/ // mode & 4: return value when already ns object
|
|
||||||
/******/ // mode & 8|1: behave like require
|
|
||||||
/******/ __webpack_require__.t = function(value, mode) {
|
|
||||||
/******/ if(mode & 1) value = __webpack_require__(value);
|
|
||||||
/******/ if(mode & 8) return value;
|
|
||||||
/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
|
|
||||||
/******/ var ns = Object.create(null);
|
|
||||||
/******/ __webpack_require__.r(ns);
|
|
||||||
/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
|
|
||||||
/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
|
|
||||||
/******/ return ns;
|
|
||||||
/******/ };
|
|
||||||
/******/
|
|
||||||
/******/ // getDefaultExport function for compatibility with non-harmony modules
|
|
||||||
/******/ __webpack_require__.n = function(module) {
|
|
||||||
/******/ var getter = module && module.__esModule ?
|
|
||||||
/******/ function getDefault() { return module['default']; } :
|
|
||||||
/******/ function getModuleExports() { return module; };
|
|
||||||
/******/ __webpack_require__.d(getter, 'a', getter);
|
|
||||||
/******/ return getter;
|
|
||||||
/******/ };
|
|
||||||
/******/
|
|
||||||
/******/ // Object.prototype.hasOwnProperty.call
|
|
||||||
/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
|
|
||||||
/******/
|
|
||||||
/******/ // __webpack_public_path__
|
|
||||||
/******/ __webpack_require__.p = "/";
|
|
||||||
/******/
|
|
||||||
/******/ var jsonpArray = this["webpackJsonp"] = this["webpackJsonp"] || [];
|
|
||||||
/******/ var oldJsonpFunction = jsonpArray.push.bind(jsonpArray);
|
|
||||||
/******/ jsonpArray.push = webpackJsonpCallback;
|
|
||||||
/******/ jsonpArray = jsonpArray.slice();
|
|
||||||
/******/ for(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);
|
|
||||||
/******/ var parentJsonpFunction = oldJsonpFunction;
|
|
||||||
/******/
|
|
||||||
/******/
|
|
||||||
/******/ // run deferred modules from other chunks
|
|
||||||
/******/ checkDeferredModules();
|
|
||||||
/******/ })
|
|
||||||
/************************************************************************/
|
|
||||||
/******/ ([]);
|
|
||||||
78308
unpackage/dist/dev/app-plus/app-service.js
vendored
72152
unpackage/dist/dev/app-plus/app-view.js
vendored
|
Before Width: | Height: | Size: 7.5 KiB |
|
Before Width: | Height: | Size: 30 KiB |
|
Before Width: | Height: | Size: 38 KiB |
BIN
unpackage/dist/dev/app-plus/assets/kj.a23a3969.png
vendored
|
Before Width: | Height: | Size: 2.3 KiB |
BIN
unpackage/dist/dev/app-plus/assets/kt.8676fec7.png
vendored
|
Before Width: | Height: | Size: 2.3 KiB |
BIN
unpackage/dist/dev/app-plus/assets/zt.25cf4a81.png
vendored
|
Before Width: | Height: | Size: 36 KiB |
@@ -1,88 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<meta charset="utf-8" />
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
||||||
<title>本地网页</title>
|
|
||||||
<style type="text/css">
|
|
||||||
.btn {
|
|
||||||
display: block;
|
|
||||||
margin: 20px auto;
|
|
||||||
padding: 5px;
|
|
||||||
background-color: #007aff;
|
|
||||||
border: 0;
|
|
||||||
color: #ffffff;
|
|
||||||
height: 40px;
|
|
||||||
width: 200px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.btn-red {
|
|
||||||
background-color: #dd524d;
|
|
||||||
}
|
|
||||||
|
|
||||||
.btn-yellow {
|
|
||||||
background-color: #f0ad4e;
|
|
||||||
}
|
|
||||||
|
|
||||||
.desc {
|
|
||||||
padding: 10px;
|
|
||||||
color: #999999;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<p class="desc">web-view 组件加载本地 html 示例,仅在 App 环境下生效。点击下列按钮,跳转至其它页面。</p>
|
|
||||||
<div class="btn-list">
|
|
||||||
<button class="btn" type="button" data-action="navigateTo">navigateTo</button>
|
|
||||||
<button class="btn" type="button" data-action="redirectTo">redirectTo</button>
|
|
||||||
<button class="btn" type="button" data-action="navigateBack">navigateBack</button>
|
|
||||||
<button class="btn" type="button" data-action="reLaunch">reLaunch</button>
|
|
||||||
<button class="btn" type="button" data-action="switchTab">switchTab</button>
|
|
||||||
</div>
|
|
||||||
<p class="desc">网页向应用发送消息。注意:小程序端应用会在此页面后退时接收到消息。</p>
|
|
||||||
<div class="btn-list">
|
|
||||||
<button class="btn btn-red" type="button" id="postMessage">postMessage</button>
|
|
||||||
</div>
|
|
||||||
<!-- uni 的 SDK -->
|
|
||||||
<script type="text/javascript" src="https://unpkg.com/@dcloudio/uni-webview-js@0.0.1/index.js"></script>
|
|
||||||
<script type="text/javascript">
|
|
||||||
document.addEventListener('UniAppJSBridgeReady', function() {
|
|
||||||
document.querySelector('.btn-list').addEventListener('click', function(evt) {
|
|
||||||
var target = evt.target;
|
|
||||||
if (target.tagName === 'BUTTON') {
|
|
||||||
var action = target.getAttribute('data-action');
|
|
||||||
switch (action) {
|
|
||||||
case 'switchTab':
|
|
||||||
uni.switchTab({
|
|
||||||
url: '/pages/tabBar/API/API'
|
|
||||||
});
|
|
||||||
break;
|
|
||||||
case 'reLaunch':
|
|
||||||
uni.reLaunch({
|
|
||||||
url: '/pages/tabBar/API/API'
|
|
||||||
});
|
|
||||||
break;
|
|
||||||
case 'navigateBack':
|
|
||||||
uni.navigateBack({
|
|
||||||
delta: 1
|
|
||||||
});
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
uni[action]({
|
|
||||||
url: '/pages/component/button/button'
|
|
||||||
});
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
document.querySelector("#postMessage").addEventListener('click', function() {
|
|
||||||
uni.postMessage({
|
|
||||||
data: {
|
|
||||||
action: 'message'
|
|
||||||
}
|
|
||||||
});
|
|
||||||
})
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
1
unpackage/dist/dev/app-plus/manifest.json
vendored
11312
unpackage/dist/dev/app-plus/pages/component/input/input.js
vendored
11781
unpackage/dist/dev/app-plus/pages/component/map/map.js
vendored
10943
unpackage/dist/dev/app-plus/pages/component/video/video.js
vendored
11195
unpackage/dist/dev/app-plus/pages/tabBar/extUI/extUI.js
vendored
BIN
unpackage/dist/dev/app-plus/static/60x60.png
vendored
|
Before Width: | Height: | Size: 774 B |
BIN
unpackage/dist/dev/app-plus/static/api.png
vendored
|
Before Width: | Height: | Size: 1.4 KiB |
BIN
unpackage/dist/dev/app-plus/static/apiHL.png
vendored
|
Before Width: | Height: | Size: 1.4 KiB |
BIN
unpackage/dist/dev/app-plus/static/apiIndex.png
vendored
|
Before Width: | Height: | Size: 1.9 KiB |
|
Before Width: | Height: | Size: 4.9 KiB |
|
Before Width: | Height: | Size: 4.1 KiB |
|
Before Width: | Height: | Size: 274 B |
BIN
unpackage/dist/dev/app-plus/static/arrow@2x.png
vendored
|
Before Width: | Height: | Size: 1.4 KiB |
|
Before Width: | Height: | Size: 2.9 KiB |
BIN
unpackage/dist/dev/app-plus/static/audio_mode@2x.png
vendored
|
Before Width: | Height: | Size: 986 B |
BIN
unpackage/dist/dev/app-plus/static/back@2x.png
vendored
|
Before Width: | Height: | Size: 251 B |
|
Before Width: | Height: | Size: 398 KiB |
|
Before Width: | Height: | Size: 67 KiB |
|
Before Width: | Height: | Size: 88 KiB |
|
Before Width: | Height: | Size: 255 B |
|
Before Width: | Height: | Size: 1.3 KiB |
|
Before Width: | Height: | Size: 343 B |
|
Before Width: | Height: | Size: 1.3 KiB |
|
Before Width: | Height: | Size: 1.6 KiB |
|
Before Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 1.7 KiB |
|
Before Width: | Height: | Size: 1.5 KiB |
|
Before Width: | Height: | Size: 907 B |
|
Before Width: | Height: | Size: 856 B |
|
Before Width: | Height: | Size: 797 B |
BIN
unpackage/dist/dev/app-plus/static/biaoqing.png
vendored
|
Before Width: | Height: | Size: 2.0 KiB |
|
Before Width: | Height: | Size: 1.9 KiB |
|
Before Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 779 B |
|
Before Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 830 B |
|
Before Width: | Height: | Size: 2.0 KiB |
|
Before Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 1.9 KiB |
|
Before Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 2.0 KiB |
|
Before Width: | Height: | Size: 1.2 KiB |
|
Before Width: | Height: | Size: 2.0 KiB |
|
Before Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 822 B |
|
Before Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 1.9 KiB |
|
Before Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 1.2 KiB |
|
Before Width: | Height: | Size: 1.9 KiB |
|
Before Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 843 B |
|
Before Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 2.2 KiB |
|
Before Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 1.2 KiB |
|
Before Width: | Height: | Size: 1.2 KiB |
|
Before Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 1.8 KiB |
|
Before Width: | Height: | Size: 1.9 KiB |
|
Before Width: | Height: | Size: 817 B |