@ -0,0 +1,7 @@ |
|||||||
|
[*.{js,jsx,ts,tsx,vue}] |
||||||
|
indent_style = space |
||||||
|
indent_size = 2 |
||||||
|
end_of_line = lf |
||||||
|
trim_trailing_whitespace = true |
||||||
|
insert_final_newline = true |
||||||
|
max_line_length = 100 |
||||||
@ -0,0 +1,23 @@ |
|||||||
|
.DS_Store |
||||||
|
node_modules |
||||||
|
/dist |
||||||
|
|
||||||
|
|
||||||
|
# local env files |
||||||
|
.env.local |
||||||
|
.env.*.local |
||||||
|
|
||||||
|
# Log files |
||||||
|
npm-debug.log* |
||||||
|
yarn-debug.log* |
||||||
|
yarn-error.log* |
||||||
|
pnpm-debug.log* |
||||||
|
|
||||||
|
# Editor directories and files |
||||||
|
.idea |
||||||
|
.vscode |
||||||
|
*.suo |
||||||
|
*.ntvs* |
||||||
|
*.njsproj |
||||||
|
*.sln |
||||||
|
*.sw? |
||||||
@ -0,0 +1,24 @@ |
|||||||
|
# admin |
||||||
|
|
||||||
|
## Project setup |
||||||
|
``` |
||||||
|
yarn install |
||||||
|
``` |
||||||
|
|
||||||
|
### Compiles and hot-reloads for development |
||||||
|
``` |
||||||
|
yarn serve |
||||||
|
``` |
||||||
|
|
||||||
|
### Compiles and minifies for production |
||||||
|
``` |
||||||
|
yarn build |
||||||
|
``` |
||||||
|
|
||||||
|
### Lints and fixes files |
||||||
|
``` |
||||||
|
yarn lint |
||||||
|
``` |
||||||
|
|
||||||
|
### Customize configuration |
||||||
|
See [Configuration Reference](https://cli.vuejs.org/config/). |
||||||
@ -0,0 +1,5 @@ |
|||||||
|
module.exports = { |
||||||
|
presets: [ |
||||||
|
'@vue/cli-plugin-babel/preset', |
||||||
|
], |
||||||
|
}; |
||||||
@ -0,0 +1,19 @@ |
|||||||
|
{ |
||||||
|
"compilerOptions": { |
||||||
|
"target": "es5", |
||||||
|
"module": "esnext", |
||||||
|
"baseUrl": "./", |
||||||
|
"moduleResolution": "node", |
||||||
|
"paths": { |
||||||
|
"@/*": [ |
||||||
|
"src/*" |
||||||
|
] |
||||||
|
}, |
||||||
|
"lib": [ |
||||||
|
"esnext", |
||||||
|
"dom", |
||||||
|
"dom.iterable", |
||||||
|
"scripthost" |
||||||
|
] |
||||||
|
} |
||||||
|
} |
||||||
@ -0,0 +1,58 @@ |
|||||||
|
{ |
||||||
|
"name": "map", |
||||||
|
"version": "0.1.0", |
||||||
|
"private": true, |
||||||
|
"scripts": { |
||||||
|
"serve": "vue-cli-service serve", |
||||||
|
"build": "vue-cli-service build", |
||||||
|
"lint": "vue-cli-service lint" |
||||||
|
}, |
||||||
|
"dependencies": { |
||||||
|
"@amap/amap-jsapi-loader": "^1.0.1", |
||||||
|
"axios": "^1.4.0", |
||||||
|
"core-js": "^3.8.3", |
||||||
|
"echarts": "^5.4.2", |
||||||
|
"element-ui": "^2.15.13", |
||||||
|
"rxjs": "^7.8.1", |
||||||
|
"vue": "^2.6.14", |
||||||
|
"vue-router": "^3.5.1", |
||||||
|
"vue-seamless-scroll": "^1.1.23", |
||||||
|
"vuex": "^3.6.2" |
||||||
|
}, |
||||||
|
"devDependencies": { |
||||||
|
"@babel/core": "^7.12.16", |
||||||
|
"@babel/eslint-parser": "^7.12.16", |
||||||
|
"@vue/cli-plugin-babel": "~5.0.0", |
||||||
|
"@vue/cli-plugin-eslint": "~5.0.0", |
||||||
|
"@vue/cli-plugin-router": "~5.0.0", |
||||||
|
"@vue/cli-plugin-vuex": "~5.0.0", |
||||||
|
"@vue/cli-service": "~5.0.0", |
||||||
|
"@vue/eslint-config-airbnb": "^6.0.0", |
||||||
|
"eslint": "^7.32.0", |
||||||
|
"eslint-plugin-import": "^2.25.3", |
||||||
|
"eslint-plugin-vue": "^8.0.3", |
||||||
|
"eslint-plugin-vuejs-accessibility": "^1.1.0", |
||||||
|
"sass": "^1.32.7", |
||||||
|
"sass-loader": "^12.0.0", |
||||||
|
"vue-template-compiler": "^2.6.14" |
||||||
|
}, |
||||||
|
"eslintConfig": { |
||||||
|
"root": true, |
||||||
|
"env": { |
||||||
|
"node": true |
||||||
|
}, |
||||||
|
"extends": [ |
||||||
|
"plugin:vue/essential", |
||||||
|
"@vue/airbnb" |
||||||
|
], |
||||||
|
"parserOptions": { |
||||||
|
"parser": "@babel/eslint-parser" |
||||||
|
}, |
||||||
|
"rules": {} |
||||||
|
}, |
||||||
|
"browserslist": [ |
||||||
|
"> 1%", |
||||||
|
"last 2 versions", |
||||||
|
"not dead" |
||||||
|
] |
||||||
|
} |
||||||
@ -0,0 +1,4 @@ |
|||||||
|
const config = { |
||||||
|
baseIp: '/gw/', |
||||||
|
baseYFIp: '/yunfan/', |
||||||
|
} |
||||||
|
After Width: | Height: | Size: 4.2 KiB |
@ -0,0 +1,23 @@ |
|||||||
|
<!DOCTYPE html> |
||||||
|
<html lang=""> |
||||||
|
<head> |
||||||
|
<meta charset="utf-8"> |
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge"> |
||||||
|
<meta name="viewport" content="width=device-width,initial-scale=1.0"> |
||||||
|
<link rel="icon" href="<%= BASE_URL %>favicon.ico"> |
||||||
|
<title><%= htmlWebpackPlugin.options.title %></title> |
||||||
|
<script src="./config.js"></script> |
||||||
|
<script type="text/javascript"> |
||||||
|
window._AMapSecurityConfig = { |
||||||
|
securityJsCode: '03a24273f9b3e14e3806b84664820a1d', |
||||||
|
} |
||||||
|
</script> |
||||||
|
</head> |
||||||
|
<body> |
||||||
|
<noscript> |
||||||
|
<strong>We're sorry but <%= htmlWebpackPlugin.options.title %> doesn't work properly without JavaScript enabled. Please enable it to continue.</strong> |
||||||
|
</noscript> |
||||||
|
<div id="app"></div> |
||||||
|
<!-- built files will be auto injected --> |
||||||
|
</body> |
||||||
|
</html> |
||||||
@ -0,0 +1,28 @@ |
|||||||
|
<template> |
||||||
|
<div id="app"> |
||||||
|
<router-view/> |
||||||
|
</div> |
||||||
|
</template> |
||||||
|
|
||||||
|
<style lang="scss"> |
||||||
|
#app { |
||||||
|
font-family: Avenir, Helvetica, Arial, sans-serif; |
||||||
|
-webkit-font-smoothing: antialiased; |
||||||
|
-moz-osx-font-smoothing: grayscale; |
||||||
|
text-align: center; |
||||||
|
color: #2c3e50; |
||||||
|
} |
||||||
|
|
||||||
|
nav { |
||||||
|
padding: 30px; |
||||||
|
|
||||||
|
a { |
||||||
|
font-weight: bold; |
||||||
|
color: #2c3e50; |
||||||
|
|
||||||
|
&.router-link-exact-active { |
||||||
|
color: #42b983; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
</style> |
||||||
@ -0,0 +1,7 @@ |
|||||||
|
import request from "@/util/axios"; |
||||||
|
|
||||||
|
export const queryResolve = () => |
||||||
|
request({ |
||||||
|
url: "/api/blade-business/report/getMediateFinish", |
||||||
|
method: "get", |
||||||
|
}); |
||||||
|
After Width: | Height: | Size: 5.8 MiB |
|
After Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 1.6 MiB |
|
After Width: | Height: | Size: 7.6 KiB |
|
After Width: | Height: | Size: 4.3 KiB |
|
After Width: | Height: | Size: 1.4 KiB |
|
After Width: | Height: | Size: 8.3 KiB |
|
After Width: | Height: | Size: 432 KiB |
|
After Width: | Height: | Size: 3.4 KiB |
|
After Width: | Height: | Size: 2.2 KiB |
|
After Width: | Height: | Size: 3.5 KiB |
|
After Width: | Height: | Size: 7.7 KiB |
|
After Width: | Height: | Size: 5.7 KiB |
|
After Width: | Height: | Size: 26 KiB |
|
After Width: | Height: | Size: 161 KiB |
|
After Width: | Height: | Size: 7.7 KiB |
|
After Width: | Height: | Size: 25 KiB |
|
After Width: | Height: | Size: 3.3 KiB |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 8.2 KiB |
|
After Width: | Height: | Size: 26 KiB |
|
After Width: | Height: | Size: 6.7 KiB |
|
After Width: | Height: | Size: 1.7 KiB |
|
After Width: | Height: | Size: 7.0 KiB |
|
After Width: | Height: | Size: 12 KiB |
|
After Width: | Height: | Size: 7.2 KiB |
|
After Width: | Height: | Size: 7.7 KiB |
|
After Width: | Height: | Size: 17 KiB |
|
After Width: | Height: | Size: 635 B |
|
After Width: | Height: | Size: 905 B |
|
After Width: | Height: | Size: 1.9 KiB |
|
After Width: | Height: | Size: 2.0 KiB |
|
After Width: | Height: | Size: 2.0 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 15 KiB |
|
After Width: | Height: | Size: 30 KiB |
|
After Width: | Height: | Size: 12 KiB |
|
After Width: | Height: | Size: 1.5 KiB |
|
After Width: | Height: | Size: 1.3 KiB |
|
After Width: | Height: | Size: 989 B |
@ -0,0 +1,60 @@ |
|||||||
|
<template> |
||||||
|
<div class="hello"> |
||||||
|
<h1>{{ msg }}</h1> |
||||||
|
<p> |
||||||
|
For a guide and recipes on how to configure / customize this project,<br> |
||||||
|
check out the |
||||||
|
<a href="https://cli.vuejs.org" target="_blank" rel="noopener">vue-cli documentation</a>. |
||||||
|
</p> |
||||||
|
<h3>Installed CLI Plugins</h3> |
||||||
|
<ul> |
||||||
|
<li><a href="https://github.com/vuejs/vue-cli/tree/dev/packages/%40vue/cli-plugin-babel" target="_blank" rel="noopener">babel</a></li> |
||||||
|
<li><a href="https://github.com/vuejs/vue-cli/tree/dev/packages/%40vue/cli-plugin-router" target="_blank" rel="noopener">router</a></li> |
||||||
|
<li><a href="https://github.com/vuejs/vue-cli/tree/dev/packages/%40vue/cli-plugin-vuex" target="_blank" rel="noopener">vuex</a></li> |
||||||
|
<li><a href="https://github.com/vuejs/vue-cli/tree/dev/packages/%40vue/cli-plugin-eslint" target="_blank" rel="noopener">eslint</a></li> |
||||||
|
</ul> |
||||||
|
<h3>Essential Links</h3> |
||||||
|
<ul> |
||||||
|
<li><a href="https://vuejs.org" target="_blank" rel="noopener">Core Docs</a></li> |
||||||
|
<li><a href="https://forum.vuejs.org" target="_blank" rel="noopener">Forum</a></li> |
||||||
|
<li><a href="https://chat.vuejs.org" target="_blank" rel="noopener">Community Chat</a></li> |
||||||
|
<li><a href="https://twitter.com/vuejs" target="_blank" rel="noopener">Twitter</a></li> |
||||||
|
<li><a href="https://news.vuejs.org" target="_blank" rel="noopener">News</a></li> |
||||||
|
</ul> |
||||||
|
<h3>Ecosystem</h3> |
||||||
|
<ul> |
||||||
|
<li><a href="https://router.vuejs.org" target="_blank" rel="noopener">vue-router</a></li> |
||||||
|
<li><a href="https://vuex.vuejs.org" target="_blank" rel="noopener">vuex</a></li> |
||||||
|
<li><a href="https://github.com/vuejs/vue-devtools#vue-devtools" target="_blank" rel="noopener">vue-devtools</a></li> |
||||||
|
<li><a href="https://vue-loader.vuejs.org" target="_blank" rel="noopener">vue-loader</a></li> |
||||||
|
<li><a href="https://github.com/vuejs/awesome-vue" target="_blank" rel="noopener">awesome-vue</a></li> |
||||||
|
</ul> |
||||||
|
</div> |
||||||
|
</template> |
||||||
|
|
||||||
|
<script> |
||||||
|
export default { |
||||||
|
name: 'HelloWorld', |
||||||
|
props: { |
||||||
|
msg: String, |
||||||
|
}, |
||||||
|
}; |
||||||
|
</script> |
||||||
|
|
||||||
|
<!-- Add "scoped" attribute to limit CSS to this component only --> |
||||||
|
<style scoped lang="scss"> |
||||||
|
h3 { |
||||||
|
margin: 40px 0 0; |
||||||
|
} |
||||||
|
ul { |
||||||
|
list-style-type: none; |
||||||
|
padding: 0; |
||||||
|
} |
||||||
|
li { |
||||||
|
display: inline-block; |
||||||
|
margin: 0 10px; |
||||||
|
} |
||||||
|
a { |
||||||
|
color: #42b983; |
||||||
|
} |
||||||
|
</style> |
||||||
@ -0,0 +1,632 @@ |
|||||||
|
<template> |
||||||
|
<!-- :style="{ width: aWidth + 'px', height: aHeight + 'px' }" |
||||||
|
:style="{ |
||||||
|
transform: `translate(-${translateX}px, -${translateY}px)`, |
||||||
|
}" --> |
||||||
|
<div class="amap-wai"> |
||||||
|
<div class="amap-box" :id="amapId"></div> |
||||||
|
<!-- <div class="custom-info"> |
||||||
|
<div class="custom"> |
||||||
|
<div class="title_info"> |
||||||
|
<div class="title_name">胶西街道</div> |
||||||
|
<div class="title_num"> |
||||||
|
<div>已上报</div> |
||||||
|
<div><span>5</span>件</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<div class="con_info"> |
||||||
|
<div class="con_info_top"> |
||||||
|
<div class="con_tit">初登日期</div> |
||||||
|
<div class="con_tit">诉求类型</div> |
||||||
|
<div class="con_tit">来访人姓名</div> |
||||||
|
</div> |
||||||
|
<div class="con_info_con"> |
||||||
|
<div class="con_item"> |
||||||
|
<div class="item_txt">2023/06/08</div> |
||||||
|
<div class="item_txt">王华华</div> |
||||||
|
<div class="item_txt">家庭纠纷</div> |
||||||
|
</div> |
||||||
|
<div class="con_item"> |
||||||
|
<div class="item_txt">2023/06/08</div> |
||||||
|
<div class="item_txt">王华华</div> |
||||||
|
<div class="item_txt">家庭纠纷</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<div class="cancel"> |
||||||
|
<img src="@/assets/img/cancel.png" alt=""> |
||||||
|
</div> |
||||||
|
</div> --> |
||||||
|
</div> |
||||||
|
</template> |
||||||
|
|
||||||
|
<script> |
||||||
|
let communityData = []; |
||||||
|
|
||||||
|
import AMapLoader from "@amap/amap-jsapi-loader"; |
||||||
|
import { getZoom, callFuncInMain, ifIframe } from "@/libs/util"; |
||||||
|
import { |
||||||
|
mapView1, |
||||||
|
mapView2, |
||||||
|
createAMap, |
||||||
|
addJiaozhouMaker, |
||||||
|
addQingdao, |
||||||
|
addJiaozhou, |
||||||
|
addJiedao, |
||||||
|
addNullJiedao, |
||||||
|
addWangge3, |
||||||
|
addWangge4, |
||||||
|
addJiaozhouTexts, |
||||||
|
addQingDaoTexts, |
||||||
|
addWanggeMakers, |
||||||
|
addWangge31, |
||||||
|
addWangge41, |
||||||
|
resetGroup3Style, |
||||||
|
resetGroup4Style, |
||||||
|
hideWanggeAll, |
||||||
|
resetGroup2Style, |
||||||
|
deleteWanggeAll, |
||||||
|
addJiaozhouLabelMarker, |
||||||
|
deleteWangge2, |
||||||
|
addShequ, |
||||||
|
} from "@/libs/amap"; |
||||||
|
import { |
||||||
|
selectedWanggeLevel$, |
||||||
|
selectedJiaozhou$, |
||||||
|
selectedStreet$, |
||||||
|
selectedWangge3$, |
||||||
|
selectedWangge4$, |
||||||
|
hotMapType$, |
||||||
|
selectedModelInfo$, |
||||||
|
} from "@/subjects/sub"; |
||||||
|
import { Divider } from 'element-ui'; |
||||||
|
|
||||||
|
export default { |
||||||
|
name: "index", |
||||||
|
props: { |
||||||
|
reliData: Array, |
||||||
|
}, |
||||||
|
data() { |
||||||
|
return { |
||||||
|
amapId: !ifIframe() ? "amap-id-click" : "amap-id", |
||||||
|
aWidth: 1920, |
||||||
|
aHeight: 1080, |
||||||
|
|
||||||
|
winWidth: 1920, |
||||||
|
winHeight: 1080, |
||||||
|
|
||||||
|
translateX: 0, |
||||||
|
translateY: 0, |
||||||
|
amap: null, |
||||||
|
ob: null, |
||||||
|
ob1: null, |
||||||
|
rankList: {}, |
||||||
|
markersArr:[], |
||||||
|
markers: [ |
||||||
|
{ |
||||||
|
name: "洋河镇", |
||||||
|
position: [119.945718, 36.136799], //洋河镇 |
||||||
|
offset: [-100, -80], |
||||||
|
}, |
||||||
|
{ |
||||||
|
name: "铺集镇", |
||||||
|
position: [119.726968, 36.126774], //铺集镇 |
||||||
|
offset: [-80, -120], |
||||||
|
}, |
||||||
|
{ |
||||||
|
name: "里岔镇", |
||||||
|
position: [119.788636, 36.070297], //里岔镇 |
||||||
|
offset: [20, -150], |
||||||
|
}, |
||||||
|
{ |
||||||
|
name: "胶西街道", |
||||||
|
position: [119.920687, 36.26026], //胶西街道 |
||||||
|
offset: [-80, -80], |
||||||
|
}, |
||||||
|
{ |
||||||
|
name: "九龙街道", |
||||||
|
position: [120.080354, 36.20667], //九龙街道 |
||||||
|
offset: [-30, 0], |
||||||
|
}, |
||||||
|
{ |
||||||
|
name: "中云街道", |
||||||
|
position: [120.002198, 36.28424], //中云街道 |
||||||
|
offset: [-80, -80], |
||||||
|
}, |
||||||
|
{ |
||||||
|
name: "阜安街道", |
||||||
|
position: [120.015932, 36.284843], //阜安街道 |
||||||
|
offset: [-60, -80], |
||||||
|
}, |
||||||
|
{ |
||||||
|
name: "三里河街道", |
||||||
|
position: [120.003466, 36.267643], //三里河街道 |
||||||
|
offset: [-60, -20], |
||||||
|
}, |
||||||
|
{ |
||||||
|
name: "胶东街道", |
||||||
|
position: [120.097643, 36.310525], //胶东街道 |
||||||
|
offset: [-100, -150], |
||||||
|
}, |
||||||
|
{ |
||||||
|
name: "胶北街道", |
||||||
|
position: [119.965759, 36.362683], //胶北街道 |
||||||
|
offset: [-80, -60], |
||||||
|
}, |
||||||
|
{ |
||||||
|
name: "胶莱街道", |
||||||
|
position: [120.070996, 36.443059], //胶莱街道 |
||||||
|
offset: [-80, -60], |
||||||
|
}, |
||||||
|
{ |
||||||
|
name: "李哥庄镇", |
||||||
|
position: [120.158927, 36.352635], //李哥庄镇 |
||||||
|
offset: [-20, -70], |
||||||
|
}, |
||||||
|
], |
||||||
|
}; |
||||||
|
}, |
||||||
|
// 监听,当路由发生变化的时候执行 |
||||||
|
watch: { |
||||||
|
$route: { |
||||||
|
handler: function (val, oldVal) {}, |
||||||
|
// 深度观察监听 |
||||||
|
deep: true, |
||||||
|
}, |
||||||
|
reliData: { |
||||||
|
handler(newVal, oldVal) { |
||||||
|
console.log("this ==>", this); |
||||||
|
console.log("newVal ==>", newVal); |
||||||
|
console.log("oldVal ==>", oldVal); |
||||||
|
this.rankList = newVal[0]; |
||||||
|
if(this.amap == null){ |
||||||
|
this.$nextTick(() =>{ |
||||||
|
this.newMap() |
||||||
|
}) |
||||||
|
}else{ |
||||||
|
this.selectedWanggeLevel2Event(); |
||||||
|
} |
||||||
|
|
||||||
|
}, |
||||||
|
}, |
||||||
|
}, |
||||||
|
mounted() { |
||||||
|
this.setZoom(); |
||||||
|
window.clickMark = this.clickMark; |
||||||
|
|
||||||
|
window.addEventListener("resize", () => { |
||||||
|
this.setZoom(); |
||||||
|
}); |
||||||
|
|
||||||
|
}, |
||||||
|
beforeUnmount() { |
||||||
|
this.ob?.unsubscribe(); |
||||||
|
this.ob1?.unsubscribe(); |
||||||
|
}, |
||||||
|
created() { |
||||||
|
// console.log('reliData ===>',) |
||||||
|
}, |
||||||
|
methods: { |
||||||
|
createInfo(title, content){ |
||||||
|
var info = document.createElement("div"); |
||||||
|
info.className = "custom-info input-card content-window-card"; |
||||||
|
|
||||||
|
// //可以通过下面的方式修改自定义窗体的宽高 |
||||||
|
info.style.width = "350px"; |
||||||
|
info.innerHTML = |
||||||
|
'<div class="custom">'+ |
||||||
|
'<div class="title_info">' + |
||||||
|
'<div class="title_name">洋河镇</div>'+ |
||||||
|
'<div class="title_num">'+ |
||||||
|
'<div style="color:#fff">已上报</div>'+ |
||||||
|
'<div class="sb_num_txt"><span style="font-size:20px">5</span>件</div>'+ |
||||||
|
'</div>'+'</div>'+ |
||||||
|
'<div class="con_info">' + |
||||||
|
' <div class="con_info_top">' + |
||||||
|
'<div class="con_tit">初登日期</div>' + |
||||||
|
'<div class="con_tit">诉求类型</div>' + |
||||||
|
' <div class="con_tit">来访人姓名</div>' + |
||||||
|
' </div>' + |
||||||
|
'<div class="con_info_con">' + |
||||||
|
'<div class="con_item">'+ |
||||||
|
' <div class="item_txt">2023/06/08</div>'+ |
||||||
|
'<div class="item_txt">王华华</div>'+ |
||||||
|
'<div class="item_txt">家庭纠纷</div>'+ |
||||||
|
'</div>'+ |
||||||
|
'<div class="con_item">'+ |
||||||
|
' <div class="item_txt">2023/06/08</div>'+ |
||||||
|
'<div class="item_txt">王华华</div>'+ |
||||||
|
'<div class="item_txt">家庭纠纷</div>'+ |
||||||
|
'</div>'+ |
||||||
|
'</div>'+ |
||||||
|
'</div>'+ |
||||||
|
'</div>'+ |
||||||
|
'<div class="cancel">'+ |
||||||
|
'</div>' |
||||||
|
console.log(info) |
||||||
|
return info; |
||||||
|
}, |
||||||
|
clickMark(val){ |
||||||
|
console.log('点击事件',val + '') |
||||||
|
let tmp = this.markers.find(item => item.name == val) |
||||||
|
console.log(tmp) |
||||||
|
var title = '方恒假日酒店<span style="font-size:11px;color:#F00;">价格:318</span>', |
||||||
|
content = []; |
||||||
|
content.push("<img src='http://tpc.googlesyndication.com/simgad/5843493769827749134'>地址:北京市朝阳区阜通东大街6号院3号楼东北8.3公里"); |
||||||
|
content.push("电话:010-64733333"); |
||||||
|
content.push("<a href='https://ditu.amap.com/detail/B000A8URXB?citycode=110105'>详细信息</a>"); |
||||||
|
var infoWindow = new AMap.InfoWindow({ |
||||||
|
isCustom: true, //使用自定义窗体 |
||||||
|
content: this.createInfo(title, content.join("<br/>")), |
||||||
|
offset: new AMap.Pixel(16, -45) |
||||||
|
}); |
||||||
|
infoWindow.open(this.amap,tmp.position) |
||||||
|
}, |
||||||
|
// markerClick(e){ |
||||||
|
// console.log(e) |
||||||
|
// }, |
||||||
|
newMap(){ |
||||||
|
AMapLoader.load({ |
||||||
|
key: this.config.amap.key, // 申请好的Web端开发者Key,首次调用 load 时必填 |
||||||
|
version: "2.0", // 指定要加载的 JSAPI 的版本,缺省时默认为 1.4.15 |
||||||
|
plugins: ["AMap.GeoJSON"], // 需要使用的的插件列表,如比例尺'AMap.Scale'等 |
||||||
|
}) |
||||||
|
.then((AMap) => { |
||||||
|
this.amap = createAMap(this.amapId); |
||||||
|
this.amap.setCenter([119.954097, 36.220797]); |
||||||
|
this.amap.on("complete", async () => { |
||||||
|
callFuncInMain("wanggeScreenComplete", ""); |
||||||
|
|
||||||
|
this.ob = selectedWanggeLevel$.subscribe(async (key) => { |
||||||
|
console.log('key',key) |
||||||
|
this.amap?.clearMap() |
||||||
|
this.clearModal(); |
||||||
|
hideWanggeAll(); |
||||||
|
if (key === 1) { |
||||||
|
this.amap.setZoomAndCenter(mapView1.zoom, mapView1.center, true); |
||||||
|
this.amap.setPitch(mapView1.pitch, true); |
||||||
|
this.amap.setRotation(mapView1.rotation, true); |
||||||
|
addQingdao(this.amap); |
||||||
|
addJiaozhou(this.amap); |
||||||
|
addJiaozhouMaker(this.amap); |
||||||
|
// addQingDaoTexts(this.amap) |
||||||
|
} else if (key === 2) { |
||||||
|
// deleteWangge2() |
||||||
|
this.selectedWanggeLevel2Event(hotMapType$.value); |
||||||
|
} |
||||||
|
}); |
||||||
|
// this.ob1 = hotMapType$.subscribe((type) => { |
||||||
|
// if (selectedWanggeLevel$.value === 2) { |
||||||
|
// this.selectedWanggeLevel2Event(hotMapType$.value); |
||||||
|
// } |
||||||
|
// }); |
||||||
|
}); |
||||||
|
this.amap.on("click", (e) => { |
||||||
|
// console.log(this.amap.getCenter()) |
||||||
|
// console.log(this.amap.getZoom()) |
||||||
|
// console.log(this.amap.getPitch()) |
||||||
|
// console.log(this.amap.getRotation()) |
||||||
|
this.clearModal(); |
||||||
|
}); |
||||||
|
}) |
||||||
|
.catch((e) => { |
||||||
|
console.log(e); |
||||||
|
}); |
||||||
|
}, |
||||||
|
async getSecret() { |
||||||
|
const { data } = await this.$fetch.get("api/bs/secret", {}); |
||||||
|
return RSAJieMi(data); |
||||||
|
}, |
||||||
|
/** |
||||||
|
* |
||||||
|
* @param {*} hotType 热力图 形式 0:按积分 1: 按数量 |
||||||
|
*/ |
||||||
|
async selectedWanggeLevel2Event() { |
||||||
|
// 接口比较慢,先加载个空的,接口好了再填充一遍 |
||||||
|
// this.addAMapWanggeLevel2({}, hotType) |
||||||
|
|
||||||
|
// let rankList = {} |
||||||
|
// if (hotType === 0) { |
||||||
|
// // 获取镇街的诉求排名 |
||||||
|
// rankList = await this.qryMobileSuqiuKanbanList('zjd') |
||||||
|
// // console.log('rankList',rankList) |
||||||
|
// } else { |
||||||
|
// // 获取镇街的诉求排名 |
||||||
|
// // rankList = await this.getQrySqpm('zjd') |
||||||
|
// } |
||||||
|
// rankList = { 铺集镇: 1, 里岔镇: 4 }; |
||||||
|
console.log('selectedWanggeLevel$.value',selectedWanggeLevel$.value) |
||||||
|
if (selectedWanggeLevel$.value === 2) { |
||||||
|
this.addAMapWanggeLevel2(this.rankList); |
||||||
|
} |
||||||
|
}, |
||||||
|
/** |
||||||
|
* 添加二级网格的地图上的东西 |
||||||
|
* @param {*} rankList |
||||||
|
* @param {*} hotType |
||||||
|
*/ |
||||||
|
addAMapWanggeLevel2(rankList) { |
||||||
|
// console.log('hotType ==>',hotType,) |
||||||
|
// this.amap.setZoomAndCenter(mapView2.zoom, mapView2.center, true); |
||||||
|
// this.amap.setPitch(mapView2.pitch, true); |
||||||
|
// this.amap.setRotation(mapView2.rotation, true); |
||||||
|
// let latLng = new LatLng(119.726968,36.126774); |
||||||
|
if(this.markersArr.length !== 0){ |
||||||
|
this.amap.remove(this.markersArr) |
||||||
|
} |
||||||
|
|
||||||
|
let markerArr = []; |
||||||
|
|
||||||
|
for (let key in rankList) { |
||||||
|
this.markers.map((item) => { |
||||||
|
if (key == item.name) { |
||||||
|
if (rankList[key] < 75) { |
||||||
|
markerArr.push({ |
||||||
|
markerContent: |
||||||
|
'<div class="green-content-marker">' + |
||||||
|
' <div class="green-btn">' + |
||||||
|
rankList[key] + |
||||||
|
"</div>" + |
||||||
|
"</div>", |
||||||
|
position: item.position, |
||||||
|
offset: item.offset, |
||||||
|
}); |
||||||
|
} else if (rankList[key] >= 75 && rankList[key] <= 85){ |
||||||
|
markerArr.push({ |
||||||
|
markerContent: |
||||||
|
"<div class='yellow-content-marker'" + 'onclick="clickMark(' + "'" + key + "'" +')"' + '</div>'+ |
||||||
|
'<div class="yellow-btn">' + |
||||||
|
rankList[key] + |
||||||
|
"</div>" + |
||||||
|
"</div>", |
||||||
|
position: item.position, |
||||||
|
offset: item.offset, |
||||||
|
}); |
||||||
|
} else if (rankList[key] > 85) { |
||||||
|
markerArr.push({ |
||||||
|
markerContent: |
||||||
|
'<div class="red-content-marker">' + |
||||||
|
' <div class="red-btn">' + |
||||||
|
rankList[key] + |
||||||
|
"</div>" + |
||||||
|
"</div>", |
||||||
|
position: item.position, |
||||||
|
offset: item.offset, |
||||||
|
}); |
||||||
|
} |
||||||
|
} |
||||||
|
}); |
||||||
|
} |
||||||
|
markerArr.forEach((marker) => { |
||||||
|
let markTmp = new AMap.Marker({ |
||||||
|
map: this.amap, |
||||||
|
content: marker.markerContent, |
||||||
|
// icon: marker.icon, |
||||||
|
position: [marker.position[0], marker.position[1]], |
||||||
|
offset: new AMap.Pixel(marker.offset[0], marker.offset[1]), |
||||||
|
}); |
||||||
|
this.markersArr.push(markTmp) |
||||||
|
// markTmp.on('click', this.markerClick); |
||||||
|
}); |
||||||
|
|
||||||
|
|
||||||
|
addJiedao(this.amap, 2, rankList); |
||||||
|
addJiaozhouTexts(this.amap); |
||||||
|
addJiaozhouLabelMarker(this.amap) |
||||||
|
}, |
||||||
|
clearModal() { |
||||||
|
// 点击空白处的时候,取消弹窗 |
||||||
|
selectedJiaozhou$.next(null); |
||||||
|
// 取消二级 |
||||||
|
selectedStreet$.next(null); |
||||||
|
resetGroup2Style(); |
||||||
|
// 取消三级 |
||||||
|
selectedWangge3$.next(null); |
||||||
|
resetGroup3Style(); |
||||||
|
// 取消四级 |
||||||
|
selectedWangge4$.next(null); |
||||||
|
|
||||||
|
selectedModelInfo$.next(null); |
||||||
|
resetGroup4Style(); |
||||||
|
}, |
||||||
|
setZoom() { |
||||||
|
const zoom = getZoom(); |
||||||
|
this.aWidth = 1920 * zoom; |
||||||
|
this.aHeight = 1080 * zoom; |
||||||
|
|
||||||
|
// 设置偏移,把地图居中 |
||||||
|
this.winWidth = window.innerWidth; |
||||||
|
this.winHeight = window.innerHeight; |
||||||
|
if (this.winWidth > this.aWidth) { |
||||||
|
this.translateX = (this.winWidth - this.aWidth) / 2; |
||||||
|
} |
||||||
|
if (this.winHeight > this.aHeight) { |
||||||
|
this.translateY = (this.winHeight - this.aHeight) / 2; |
||||||
|
} |
||||||
|
}, |
||||||
|
}, |
||||||
|
}; |
||||||
|
</script> |
||||||
|
|
||||||
|
<style scoped lang="scss"> |
||||||
|
.amap-wai { |
||||||
|
width: 100%; |
||||||
|
height: 100%; |
||||||
|
} |
||||||
|
::v-deep .amap-icon { |
||||||
|
width: 100px !important; |
||||||
|
height: 100px !important; |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
justify-content: center; |
||||||
|
|
||||||
|
img { |
||||||
|
width: 100%; |
||||||
|
height: 100%; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
::v-deep .custom-info{ |
||||||
|
width: 350px; |
||||||
|
height: 300px; |
||||||
|
display: flex; |
||||||
|
padding-top:20px; |
||||||
|
|
||||||
|
.custom{ |
||||||
|
width: 90%; |
||||||
|
height: 100%; |
||||||
|
background: url('@/assets/img/dia_bag.png') no-repeat; |
||||||
|
background-size: 100% 100%; |
||||||
|
|
||||||
|
|
||||||
|
.title_info{ |
||||||
|
width: 96%; |
||||||
|
height: 14%; |
||||||
|
|
||||||
|
/* background: red; */ |
||||||
|
display: flex; |
||||||
|
/* margin-top: 20px; */ |
||||||
|
margin: 0 auto; |
||||||
|
margin-top: 20px; |
||||||
|
align-items: center; |
||||||
|
justify-content: space-between; |
||||||
|
|
||||||
|
.title_name{ |
||||||
|
width: 60%; |
||||||
|
text-align: left; |
||||||
|
padding-left: 10px; |
||||||
|
font-size: 18px; |
||||||
|
color: #fff; |
||||||
|
} |
||||||
|
.title_num{ |
||||||
|
width: 40%; |
||||||
|
/* background: green; */ |
||||||
|
display: flex; |
||||||
|
height: 100%; |
||||||
|
align-items: center; |
||||||
|
|
||||||
|
.sb_num_txt{ |
||||||
|
background-image: linear-gradient(to bottom, #92eeff, #5bcaf5); |
||||||
|
-webkit-background-clip: text; |
||||||
|
-webkit-text-fill-color: transparent; |
||||||
|
font-weight: bold; |
||||||
|
} |
||||||
|
// justify-content: center; |
||||||
|
} |
||||||
|
} |
||||||
|
.con_info{ |
||||||
|
width: 90%; |
||||||
|
height: 75%; |
||||||
|
margin: 0 auto; |
||||||
|
margin-top: 3%; |
||||||
|
|
||||||
|
.con_info_top{ |
||||||
|
width: 100%; |
||||||
|
height: 13%; |
||||||
|
display: flex; |
||||||
|
background: url("@/assets/img/title_bag.png") no-repeat; |
||||||
|
background-size: 100% 100%; |
||||||
|
color: #47c5f0; |
||||||
|
|
||||||
|
.con_tit{ |
||||||
|
width: 33%; |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
justify-content: center; |
||||||
|
} |
||||||
|
} |
||||||
|
.con_info_con{ |
||||||
|
width: 100%; |
||||||
|
height: 85%; |
||||||
|
margin-top: 2%; |
||||||
|
|
||||||
|
.con_item{ |
||||||
|
width: 100%; |
||||||
|
height: 12%; |
||||||
|
background: rgba(17, 71, 96, 0.3); |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
color: #fff; |
||||||
|
margin-bottom: 5px; |
||||||
|
|
||||||
|
.item_txt{ |
||||||
|
width: 33%; |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
justify-content: center; |
||||||
|
|
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.cancel{ |
||||||
|
width:30px; |
||||||
|
height:30px; |
||||||
|
background: url("@/assets/img/cancel.png") no-repeat; |
||||||
|
background-size: 100% 100%; |
||||||
|
|
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
::v-deep .green-content-marker { |
||||||
|
width: 100px; |
||||||
|
height: 100px; |
||||||
|
background: url("@/assets/img/green.png") no-repeat; |
||||||
|
background-size: 100% 100%; |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
justify-content: center; |
||||||
|
} |
||||||
|
::v-deep .red-content-marker { |
||||||
|
width: 100px; |
||||||
|
height: 100px; |
||||||
|
background: url("@/assets/img/red.png") no-repeat; |
||||||
|
background-size: 100% 100%; |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
justify-content: center; |
||||||
|
} |
||||||
|
::v-deep .yellow-content-marker { |
||||||
|
width: 100px; |
||||||
|
height: 100px; |
||||||
|
background: url("@/assets/img/yellow.png") no-repeat; |
||||||
|
background-size: 100% 100%; |
||||||
|
display: flex; |
||||||
|
align-items: center; |
||||||
|
justify-content: center; |
||||||
|
} |
||||||
|
::v-deep .green-btn { |
||||||
|
background-image: linear-gradient(to bottom, #caffe9, #7effbb); |
||||||
|
-webkit-background-clip: text; |
||||||
|
-webkit-text-fill-color: transparent; |
||||||
|
font-size: 34px; |
||||||
|
} |
||||||
|
::v-deep .red-btn { |
||||||
|
background-image: linear-gradient(to bottom, #ffbbbb, #ff7373); |
||||||
|
-webkit-background-clip: text; |
||||||
|
-webkit-text-fill-color: transparent; |
||||||
|
font-size: 34px; |
||||||
|
} |
||||||
|
::v-deep .yellow-btn { |
||||||
|
background-image: linear-gradient(to bottom, #fff0c8, #f4e05c); |
||||||
|
-webkit-background-clip: text; |
||||||
|
-webkit-text-fill-color: transparent; |
||||||
|
font-size: 34px; |
||||||
|
} |
||||||
|
.amap-box { |
||||||
|
// position: absolute; |
||||||
|
// left: 0; |
||||||
|
// top: 0; |
||||||
|
width: 100%; |
||||||
|
height: 100%; |
||||||
|
|
||||||
|
// width: 100vw; |
||||||
|
// height: 100vh; |
||||||
|
} |
||||||
|
::v-deep .amap-marker { |
||||||
|
color: #fff !important; |
||||||
|
} |
||||||
|
</style> |
||||||
@ -0,0 +1,55 @@ |
|||||||
|
export default { |
||||||
|
/** |
||||||
|
* @description 配置显示在浏览器标签的title |
||||||
|
*/ |
||||||
|
// title: '胶州市党建引领一网统筹城乡网格治理电子地图',
|
||||||
|
// title: '胶州市党建引领基层治理数字驾驶舱',
|
||||||
|
title: "党建引领基层治理综合服务平台", |
||||||
|
/** |
||||||
|
* 屏幕分辨率 |
||||||
|
*/ |
||||||
|
sWidth: 1920, |
||||||
|
sHeight: 1080, |
||||||
|
/** |
||||||
|
* 一些定时器的轮询时间,现在5分钟 |
||||||
|
*/ |
||||||
|
timeInterval: 5 * 60 * 1000, |
||||||
|
/** |
||||||
|
* 胶州code |
||||||
|
*/ |
||||||
|
jzCode: 370281, |
||||||
|
/** |
||||||
|
* 公钥 |
||||||
|
*/ |
||||||
|
PUBLICKEY: `MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDJM+2K1ceGZfgAf80PAPGkjskem6WzS6ZSJb//pi9C0V2MBQUPKRvmYr4rEKwsU8Y/nwfINwU4SdQSjpG3JYq/Xi4BbOZYJIiyC98cOECBSJ9qMMjxsPUH8w0Oj8HQVWkIPNu/XMJwy0LHCkeOJY92lyPalsioqvlw+B59JGqsZQIDAQAB`, |
||||||
|
/** |
||||||
|
* @description api请求基础路径 |
||||||
|
*/ |
||||||
|
baseUrl: { |
||||||
|
imgBase: "https://rootai.cn", |
||||||
|
dev: "/", // 正式环境
|
||||||
|
// pro: config.baseIp,
|
||||||
|
}, |
||||||
|
baseUrlYF: { |
||||||
|
dev: "/", |
||||||
|
// pro: config.baseYFIp,
|
||||||
|
}, |
||||||
|
amap: { |
||||||
|
// 李学广的
|
||||||
|
key: "2803c231f8da7ed638fe7fb6ec0c07e5", |
||||||
|
mapStyle: "becfeeb8d2ffaf0c7e58b872cf77a16d", |
||||||
|
// 我的
|
||||||
|
// key:'aecab6c02e6bcca3dd79b717b54db235',
|
||||||
|
// mapStyle:'ae5993dd8f1b787fbc1c55cd4e7af167'
|
||||||
|
}, |
||||||
|
// 服务列表
|
||||||
|
serveces: { |
||||||
|
ops: "services/smx-ops/", |
||||||
|
tenant: "services/smx-tenant/", |
||||||
|
tensec: "services/smx-tenant-security/", |
||||||
|
uaa: "services/smx-uaa/", |
||||||
|
iot: "services/smx-iot/", |
||||||
|
grid: "services/smx-tenant-grid-operator/", |
||||||
|
gateway: "", |
||||||
|
}, |
||||||
|
}; |
||||||
@ -0,0 +1,137 @@ |
|||||||
|
/** |
||||||
|
* 青岛的区 |
||||||
|
*/ |
||||||
|
export const QingDaoArea = [ |
||||||
|
{ |
||||||
|
name: '平度市', |
||||||
|
lonlat: [119.958734, 36.756091], |
||||||
|
}, |
||||||
|
{ |
||||||
|
name: '莱西市', |
||||||
|
lonlat: [120.422906, 36.813283], |
||||||
|
}, |
||||||
|
{ |
||||||
|
name: '即墨区', |
||||||
|
lonlat: [120.686578, 36.491572], |
||||||
|
}, |
||||||
|
{ |
||||||
|
name: '黄岛区', |
||||||
|
lonlat: [119.901056, 35.88197], |
||||||
|
}, |
||||||
|
{ |
||||||
|
name: '城阳区', |
||||||
|
lonlat: [120.332269, 36.270448], |
||||||
|
}, |
||||||
|
{ |
||||||
|
name: '崂山区', |
||||||
|
lonlat: [120.609674, 36.184039], |
||||||
|
}, |
||||||
|
{ |
||||||
|
name: '李沧区', |
||||||
|
lonlat: [120.422765, 36.175832], |
||||||
|
}, |
||||||
|
{ |
||||||
|
name: '市北区', |
||||||
|
lonlat: [120.371742, 36.112084], |
||||||
|
}, |
||||||
|
{ |
||||||
|
name: '市南区', |
||||||
|
lonlat: [120.368115, 36.059835], |
||||||
|
}, |
||||||
|
] |
||||||
|
/** |
||||||
|
* 胶州镇街 |
||||||
|
*/ |
||||||
|
export const JiaoZhouStreets = [ |
||||||
|
{ |
||||||
|
name: '洋河镇', |
||||||
|
lonlat: [119.93812790669215, 36.10555101363873], |
||||||
|
}, |
||||||
|
{ |
||||||
|
name: '里岔镇', |
||||||
|
lonlat: [119.81427191569176, 36.088312187216864], |
||||||
|
}, |
||||||
|
{ |
||||||
|
name: '铺集镇', |
||||||
|
lonlat: [119.69961418613835, 36.10939977641625], |
||||||
|
}, |
||||||
|
{ |
||||||
|
name: '九龙街道', |
||||||
|
lonlat: [120.05134785376572, 36.1910063974024], |
||||||
|
}, |
||||||
|
{ |
||||||
|
name: '胶西街道', |
||||||
|
lonlat: [119.87578419752631, 36.22684798508332], |
||||||
|
}, |
||||||
|
{ |
||||||
|
name: '胶北街道', |
||||||
|
lonlat: [119.96510683139181, 36.3662414967107], |
||||||
|
}, |
||||||
|
{ |
||||||
|
name: '胶莱街道', |
||||||
|
lonlat: [120.05558423842885, 36.43479965967534], |
||||||
|
}, |
||||||
|
{ |
||||||
|
name: '李哥庄镇', |
||||||
|
lonlat: [120.176459, 36.336042], |
||||||
|
}, |
||||||
|
{ |
||||||
|
name: '胶东街道', |
||||||
|
lonlat: [120.07256238227389, 36.343183055182685], |
||||||
|
}, |
||||||
|
{ |
||||||
|
name: '中云街道', |
||||||
|
lonlat: [119.9773152727287, 36.2800766934777], |
||||||
|
}, |
||||||
|
{ |
||||||
|
name: '阜安街道', |
||||||
|
lonlat: [120.02124745283263, 36.28850013293789], |
||||||
|
}, |
||||||
|
{ |
||||||
|
name: '三里河街道', |
||||||
|
lonlat: [119.987337307199, 36.23296421121942], |
||||||
|
}, |
||||||
|
] |
||||||
|
/** |
||||||
|
* 街道编码配置 |
||||||
|
*/ |
||||||
|
export const JiaoZhouStreetsCodeObj = { |
||||||
|
洋河镇: '370281111', |
||||||
|
铺集镇: '370281105', |
||||||
|
李哥庄镇: '370281102',
|
||||||
|
九龙街道: '370281006', |
||||||
|
胶西街道: '370281009', |
||||||
|
胶北街道: '370281008', |
||||||
|
胶东街道: '370281007', |
||||||
|
阜安街道: '370281001', |
||||||
|
中云街道: '370281002', |
||||||
|
三里河街道: '370281004', |
||||||
|
里岔镇: '370281108', |
||||||
|
胶莱街道: '370281010', |
||||||
|
} |
||||||
|
export const wangge3MapTexts = [ |
||||||
|
{ |
||||||
|
name: '商城社区', |
||||||
|
lonlat: [119.88975, 36.116219], |
||||||
|
}, |
||||||
|
{ |
||||||
|
name: '商城社区2', |
||||||
|
lonlat: [119.81427191569176, 36.088312187216864], |
||||||
|
}, |
||||||
|
] |
||||||
|
export const wangge4MapTexts = [ |
||||||
|
{ |
||||||
|
name: '龙泉社区第一网格', |
||||||
|
lonlat: [120.059352, 36.360455], |
||||||
|
}, |
||||||
|
{ |
||||||
|
name: '龙泉社区第二网格', |
||||||
|
lonlat: [119.943088, 36.283618], |
||||||
|
}, |
||||||
|
] |
||||||
|
|
||||||
|
export const data1 = {} |
||||||
|
|
||||||
|
function getRandom(num) { |
||||||
|
return parseInt(Math.random() * num) |
||||||
|
} |
||||||
|
After Width: | Height: | Size: 102 KiB |
|
After Width: | Height: | Size: 1.0 MiB |
|
After Width: | Height: | Size: 275 B |
|
After Width: | Height: | Size: 519 B |
|
After Width: | Height: | Size: 389 B |
|
After Width: | Height: | Size: 885 B |
|
After Width: | Height: | Size: 366 B |
|
After Width: | Height: | Size: 319 B |
|
After Width: | Height: | Size: 1.2 KiB |
|
After Width: | Height: | Size: 363 KiB |
|
After Width: | Height: | Size: 2.5 MiB |
|
After Width: | Height: | Size: 17 KiB |
|
After Width: | Height: | Size: 982 B |
|
After Width: | Height: | Size: 1.0 KiB |
|
After Width: | Height: | Size: 1019 KiB |
|
After Width: | Height: | Size: 2.9 KiB |
|
After Width: | Height: | Size: 3.2 KiB |