diff --git a/assets/styles/mixin.less b/assets/styles/mixin.less index 0c456fe..3dae998 100644 --- a/assets/styles/mixin.less +++ b/assets/styles/mixin.less @@ -78,6 +78,12 @@ align-items: center; flex-direction: @type; } +.bg(@url, @left: left, @top: top) { + background: url(@url) @left @top no-repeat; + background-size: 100% 100%; +} + + .flex-row{ display: flex; flex-flow: row; @@ -93,3 +99,4 @@ text-overflow: ellipsis; white-space: nowrap; } + diff --git a/buildPlugins/pxresize.js b/buildPlugins/pxresize.js new file mode 100644 index 0000000..55b98f4 --- /dev/null +++ b/buildPlugins/pxresize.js @@ -0,0 +1,29 @@ +'use strict'; + +let postcss = require('postcss'); + +let pxRegExp = /\b(\d+(\.\d+)?)px\b/; +let pxGlobalRegExp = new RegExp(pxRegExp.source, 'g'); + +module.exports = postcss.plugin('postcss-px2rem', (option) => { + let opt = Object.assign({ + scale: 0.5, + ignore: [] + }, option) + + return (root, result) => { + const ignore = opt.ignore || [] + const file = result.opts.from + for (const ignoreElement of ignore) { + if (file.indexOf(ignoreElement) >= 0) return + } + root.walkDecls(function(decl) { + if (/px/.test(decl.value)) { + decl.value = decl.value.replace(pxGlobalRegExp, function(match, p1) { + return p1 * opt.scale + 'px' + }) + } + }) + result.root = root + }; +}); diff --git a/components/AirQuality.vue b/components/AirQuality.vue index e2a394d..e87f028 100644 --- a/components/AirQuality.vue +++ b/components/AirQuality.vue @@ -143,8 +143,7 @@ export default { .num-bg { width: 239px; height: 270px; - background: url("assets/peakCoalImages/left/air-excellent-rate-bg.png") no-repeat; - background-size: 100% 100%; + .bg("~/assets/peakCoalImages/left/air-excellent-rate-bg.png"); font-family: YouSheBiaoTiHei; font-size: 85.62px; color: #FFFFFF; diff --git a/components/CustomTitle.vue b/components/CustomTitle.vue index e2b9483..8c317ed 100644 --- a/components/CustomTitle.vue +++ b/components/CustomTitle.vue @@ -17,8 +17,9 @@ export default { diff --git a/components/WarningStatistics.vue b/components/WarningStatistics.vue index 2fa48f6..f59f1b3 100644 --- a/components/WarningStatistics.vue +++ b/components/WarningStatistics.vue @@ -85,7 +85,7 @@ export default { .warning-icon { width: 194px; height: 114px; - background: url("assets/peakCoalImages/right/warning-icon.png") no-repeat; + .bg("~/assets/peakCoalImages/right/warning-icon.png"); } ._title { @@ -109,7 +109,7 @@ export default { .warning-type-pie { flex: 1; height: 0; - background: url("assets/peakCoalImages/right/warning-type-pie-bg.png") no-repeat 20px center; + .bg("~/assets/peakCoalImages/right/warning-type-pie-bg.png", left, 20px); } } } diff --git a/config/mapConfig.js b/config/mapConfig.js index 7742d21..eb23c4e 100644 --- a/config/mapConfig.js +++ b/config/mapConfig.js @@ -11,11 +11,11 @@ export const ms3dConfig = { "shadows": false, "removeDblClick": true, "sceneMode": 3, - "showSun": true, - "showMoon": true, + "showSun": false, + "showMoon": false, "showSkyBox": true, "showSkyAtmosphere": true, - "fog": true, + "fog": false, "fxaa": true, "requestRenderMode": false, "contextOptions": { @@ -40,22 +40,22 @@ export const ms3dConfig = { } }, "control": { - "homeButton": true, - "baseLayerPicker": true, - "sceneModePicker": true, + "homeButton": false, + "baseLayerPicker": false, + "sceneModePicker": false, "vrButton": false, - "fullscreenButton": true, - "navigationHelpButton": true, + "fullscreenButton": false, + "navigationHelpButton": false, "animation": false, "timeline": false, "infoBox": false, "geocoder": false, "selectionIndicator": false, - "showRenderLoopErrors": true, + "showRenderLoopErrors": false, "contextmenu": { - "hasDefault": true + "hasDefault": false }, - "mouseDownView": true, + "mouseDownView": false, "zoom": { "insertBefore": "sceneModePicker" }, @@ -79,7 +79,7 @@ export const ms3dConfig = { }, "terrain": { "url": "//data.mars3d.cn/terrain", - "show": true + "show": false }, "basemaps": [ { @@ -87,15 +87,6 @@ export const ms3dConfig = { "name": "地图底图", "type": "group" }, - { - "id": 2021, - "pid": 10, - "name": "谷歌影像", - "icon": "/img/basemaps/google_img.png", - "type": "google", - "layer": "img_d", - "show": true - }, { "pid": 10, "name": "天地图影像", @@ -113,208 +104,8 @@ export const ms3dConfig = { "layer": "img_z" } ], - "show": false + "show": true }, - { - "pid": 10, - "name": "天地图电子", - "icon": "/img/basemaps/tdt_vec.png", - "type": "group", - "layers": [ - { - "name": "底图", - "type": "tdt", - "layer": "vec_d" - }, - { - "name": "注记", - "type": "tdt", - "layer": "vec_z" - } - ] - }, - { - "pid": 10, - "name": "高德影像", - "type": "group", - "icon": "/img/basemaps/gaode_img.png", - "layers": [ - { - "name": "底图", - "type": "gaode", - "layer": "img_d" - }, - { - "name": "注记", - "type": "gaode", - "layer": "img_z" - } - ] - }, - { - "pid": 10, - "name": "高德电子", - "type": "gaode", - "icon": "/img/basemaps/gaode_vec.png", - "layer": "vec" - }, - { - "pid": 10, - "name": "百度影像", - "type": "group", - "icon": "/img/basemaps/bd-img.png", - "layers": [ - { - "name": "底图", - "type": "baidu", - "layer": "img_d" - }, - { - "name": "注记", - "type": "baidu", - "layer": "img_z" - } - ] - }, - { - "pid": 10, - "name": "百度电子", - "icon": "/img/basemaps/bd-vec.png", - "type": "baidu", - "layer": "vec" - }, - { - "pid": 10, - "name": "腾讯影像", - "icon": "/img/basemaps/tencent_img.png", - "type": "group", - "layers": [ - { - "name": "底图", - "type": "tencent", - "layer": "img_d" - }, - { - "name": "注记", - "type": "tencent", - "layer": "img_z" - } - ] - }, - { - "pid": 10, - "name": "腾讯电子", - "icon": "/img/basemaps/tencent_vec.png", - "type": "tencent", - "layer": "vec" - }, - { - "pid": 10, - "name": "ArcGIS影像", - "icon": "/img/basemaps/esriWorldImagery.png", - "type": "xyz", - "url": "https://services.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}", - "enablePickFeatures": false - }, - { - "pid": 10, - "name": "微软影像", - "icon": "/img/basemaps/bingAerial.png", - "type": "bing", - "layer": "Aerial" - }, - { - "id": 2017, - "pid": 10, - "name": "暗色底图", - "type": "gaode", - "icon": "/img/basemaps/blackMarble.png", - "layer": "vec", - "invertColor": true, - "filterColor": "#4e70a6", - "brightness": 0.6, - "contrast": 1.8, - "gamma": 0.3, - "hue": 1, - "saturation": 0 - }, - { - "pid": 10, - "name": "蓝色底图", - "icon": "/img/basemaps/bd-c-midnight.png", - "type": "xyz", - "url": "http://map.geoq.cn/arcgis/rest/services/ChinaOnlineStreetPurplishBlue/MapServer/tile/{z}/{y}/{x}", - "chinaCRS": "GCJ02", - "enablePickFeatures": false - }, - { - "pid": 10, - "name": "黑色底图", - "icon": "/img/basemaps/bd-c-dark.png", - "type": "tencent", - "layer": "custom", - "style": "4" - }, - { - "pid": 10, - "name": "离线地图 (供参考)", - "type": "group", - "icon": "/img/basemaps/google_img.png", - "layers": [ - { - "name": "全球", - "type": "xyz", - "url": "{dataServer}/tile/googleImg/{z}/{x}/{y}.jpg", - "minimumLevel": 0, - "maximumLevel": 9 - }, - { - "name": "中国", - "type": "xyz", - "url": "{dataServer}/tile/googleImg/{z}/{x}/{y}.jpg", - "minimumTerrainLevel": 10, - "minimumLevel": 10, - "maximumLevel": 12, - "rectangle": { - "xmin": 69.706929, - "xmax": 136.560941, - "ymin": 15.831038, - "ymax": 52.558005 - } - }, - { - "name": "具体项目(如合肥)", - "type": "xyz", - "url": "{dataServer}/tile/googleImg/{z}/{x}/{y}.jpg", - "minimumTerrainLevel": 12, - "minimumLevel": 12, - "maximumLevel": 18, - "rectangle": { - "xmin": 116.33236, - "xmax": 118.183557, - "ymin": 31.143784, - "ymax": 32.565035 - } - } - ] - }, - { - "pid": 10, - "name": "单张图片 (本地离线)", - "icon": "/img/basemaps/offline.png", - "type": "image", - "url": "//data.mars3d.cn/file/img/world/world.jpg" - }, - { - "id": 2023, - "pid": 10, - "name": "无底图", - "icon": "/img/basemaps/null.png", - "type": "grid", - "color": "#ffffff", - "alpha": 0.03, - "cells": 2 - } ], "layers": [ { diff --git a/nuxt.config.js b/nuxt.config.js index 5c84605..1dac675 100644 --- a/nuxt.config.js +++ b/nuxt.config.js @@ -61,5 +61,8 @@ export default { // Build Configuration: https://go.nuxtjs.dev/config-build build: { + }, + env: { + scale: 0.5 } } diff --git a/package.json b/package.json index 09d611b..27b678a 100644 --- a/package.json +++ b/package.json @@ -13,6 +13,7 @@ "axios": "^1.6.1", "core-js": "^3.25.3", "echarts": "^5.4.3", + "lodash": "^4.17.21", "loglevel": "^1.9.1", "mars3d": "^3.7.3", "nuxt": "^2.15.8", @@ -20,8 +21,7 @@ "vue-echarts": "^4.1.0", "vue-seamless-scroll": "^1.1.23", "vue-server-renderer": "^2.7.10", - "vue-template-compiler": "^2.7.10", - "lodash": "^4.17.21" + "vue-template-compiler": "^2.7.10" }, "devDependencies": { "less": "^4.2.0", diff --git a/pages/index.vue b/pages/index.vue index 4df2f89..1154f7d 100644 --- a/pages/index.vue +++ b/pages/index.vue @@ -1,5 +1,7 @@