Browse Source

多环境打包修改,适配生产环境 请求接口,图片 需要加/glsms的问题

yunxing 4 years ago
parent
commit
7d67fe2d44

+ 2 - 1
.env.aly

@@ -1,3 +1,4 @@
 NODE_ENV=production
 VUE_APP_RealEnv=aly
-VUE_APP_BaseURL=
+VUE_APP_BaseURL=
+VUE_APP_PublicPath=/wandaBmGuideH5

+ 0 - 2
.env.alyTest

@@ -1,2 +0,0 @@
-NODE_ENV=production
-VUE_APP_RealEnv=alyTest

+ 3 - 1
.env.development

@@ -1,2 +1,4 @@
 VUE_APP_RealEnv=development
-VUE_APP_BaseURL=/glsms
+VUE_APP_PublicPath=/wandaBmGuideH5
+VUE_APP_BaseURL=/glsms
+VUE_APP_PublicPath=/wandaBmGuideH5

+ 2 - 1
.env.production

@@ -1,3 +1,4 @@
 NODE_ENV=production
 VUE_APP_RealEnv=production
-VUE_APP_BaseURL=/glsms
+VUE_APP_BaseURL=/glsms
+VUE_APP_PublicPath=/glsms/wandaBmGuideH5

+ 3 - 1
.env.test

@@ -1,2 +1,4 @@
 NODE_ENV=production
-VUE_APP_RealEnv=test
+VUE_APP_RealEnv=test
+VUE_APP_BaseURL=
+VUE_APP_PublicPath=/wandaBmGuideH5

+ 0 - 33
README.md

@@ -17,7 +17,6 @@ yarn serve 或 npm run serve
 ``` shell
 
 1. yarn build_aly  或 npm run build_aly     # 阿里云环境
-2. yarn build_alyTest 或 npm run build_alyTest    # 阿里云环境,可在PC端查看的项目
 3. yarn build_test 或 npm run build_test    # 测试环境
 4. yarn build_prod 或 npm run build_prod    # 生产环境
 
@@ -37,38 +36,6 @@ npm run publish # 只能发布到阿里云环境(需要外网支持)
 
 - - -
 
-### 发布阿里云, 可以在PC端查看的H5项目
-
-修改packaje.json
-
-``` json
- "remote": {
-    "host": "60.205.177.43",
-    "path": "/root/apps/web/wandaBmGuideH5Test", // wandaBmGuideH5 -> wandaBmGuideH5Test
-    "user": "root",
-    "password": "WWW.sagacloud.mail@2020",
-    "local": "wandaBmGuideH5Test"  //wandaBmGuideH5 -> wandaBmGuideH5Test
-  },
-  ```
-
-  执行打包命令
-  
-
-``` shell
-  npm run build_alyTest
-```
-
-``` shell
- npm run version 
-```
-
-发布
-
-``` shell
-npm run publish 
-```
-
-- - -
 
 ### 目录结构
 

+ 4 - 2
src/lib/parsers/STopologyParser.js

@@ -83,8 +83,10 @@ export class STopologyParser extends SParser {
         }
         else if (t.GraphElementType == 'Image') {
             if(t.Properties){
-                t.Properties.Url ? t.Properties.Url ='/glsms' + t.Properties.Url :t.Properties;
-                t.Properties.IconUrl ? t.Properties.IconUrl ='/glsms' + t.Properties.IconUrl :t.Properties
+                const VUE_APP_BaseURL = process.env.VUE_APP_BaseURL
+                // console.log('js:::::',VUE_APP_BaseURL)
+                t.Properties.Url ? t.Properties.Url = VUE_APP_BaseURL + t.Properties.Url :t.Properties;
+                t.Properties.IconUrl ? t.Properties.IconUrl = VUE_APP_BaseURL + t.Properties.IconUrl :t.Properties
             }
             let item = new SImageLegendItem(null, t);
             item.selectable = true;

+ 4 - 2
src/lib/parsers/STopologyParser.ts

@@ -95,8 +95,10 @@ export class STopologyParser extends SParser {
             }
         } else if (t.GraphElementType == 'Image') {
             if(t.Properties){
-                t.Properties.Url ? t.Properties.Url ='/glsms' + t.Properties.Url :t.Properties;
-                t.Properties.IconUrl ? t.Properties.IconUrl ='/glsms' + t.Properties.IconUrl :t.Properties
+                const VUE_APP_BaseURL = process.env.VUE_APP_BaseURL
+                // console.log('ts:::::',VUE_APP_BaseURL)
+                t.Properties.Url ? t.Properties.Url = VUE_APP_BaseURL + t.Properties.Url :t.Properties;
+                t.Properties.IconUrl ? t.Properties.IconUrl = VUE_APP_BaseURL + t.Properties.IconUrl :t.Properties
             }
             let item = new SImageLegendItem(null, t);
             item.selectable = true;

+ 2 - 2
src/views/FloorFunc.vue

@@ -41,7 +41,7 @@
             <td>
               <div class="cell">
                 <div v-if='tr.Url' class="Url-img">
-                  <img :src="`/glsms/serve/topology-wanda/Picture/query/${tr.Url}`" alt>
+                  <img :src="`${VUE_APP_BaseURL}/serve/topology-wanda/Picture/query/${tr.Url}`" alt>
                 </div>
                 <div v-else>{{'--'}}</div>
               </div>
@@ -107,7 +107,7 @@ export default {
       showImgPreview: false,
       imgList: [], //图片列表
       imgKey: `img${new Date().getTime()}`,
-      VUE_APP_BaseURL: '',
+      VUE_APP_BaseURL: '', // 基础路径, 生产环境与其他环境不同,需要进行的配置
     }
   },
   computed: {

+ 2 - 2
src/views/overview/MapOther.vue

@@ -13,7 +13,7 @@
       <div class="legendBox" v-show="show" @touchmove="show=false">
         <ul class="legend-list">
           <li class="legend-item" v-for="(item, index) in legendList" :key="`legend${index}`">
-            <img :src="`/glsms/serve/topology-wanda/Picture/query/${item.Url}`" alt>
+            <img :src="`${VUE_APP_BaseURL}/serve/topology-wanda/Picture/query/${item.Url}`" alt>
             {{`${item.Name}×${item.Num}`}}
           </li>
         </ul>
@@ -80,7 +80,7 @@ export default {
       direction: '竖屏',
       show: false,
       legendList: [], // 图例列表
-      VUE_APP_BaseURL: '',
+      VUE_APP_BaseURL: '',  // 基础路径, 生产环境与其他环境不同,需要进行的配置
     }
   },
   props: {},

+ 3 - 2
src/views/overview/MapView.vue

@@ -12,7 +12,7 @@
       <div class="legendBox" v-show="show" @touchmove="show=false">
         <ul class="legend-list">
           <li class="legend-item" v-for="(item, index) in legendList" :key="`legend${index}`">
-            <img :src="`/glsms/serve/topology-wanda/Picture/query/${item.Url}`" alt>
+            <img :src="`${VUE_APP_BaseURL}/serve/topology-wanda/Picture/query/${item.Url}`" alt>
             {{`${item.Name}×${item.Num}`}}
           </li>
         </ul>
@@ -78,7 +78,8 @@ export default {
       direction: '竖屏',
       show: false,
       legendList: [], // 图例列表
-      shopsList:[],//所有强电井对应的店铺
+      shopsList:[], //所有强电井对应的店铺
+      VUE_APP_BaseURL: '',  // 基础路径, 生产环境与其他环境不同,需要进行的配置
     }
   },
   props: {},

+ 26 - 9
vue.config.js

@@ -4,16 +4,17 @@ const CompressionPlugin = require('compression-webpack-plugin')
 const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin
 // terser-webpack-plugin 可不引入, @vue/cli-service 中已经引入了terser-webpack-plugin
 // const TerserPlugin = require('terser-webpack-plugin')
+// 
+
 module.exports = {
     devServer: {
         port: 8092,
         open: true,
+        // 生产后台服务 ,使用此服务 需要更改环境变量.env.development 改为 ==> VUE_APP_BaseURL=/glsms
         proxy: {
             'glsms/data': {
                 // target: 'http://10.199.143.126', //生产环境
-                // target: 'http://60.205.177.43', //阿里云
                 target: 'http://gcgl.wanda.cn/glsms',
-                // gcgl.wanda.cn/glsms/serve
                 changeOrigin: true,
                 secure: false,
                 pathRewrite: {
@@ -22,8 +23,7 @@ module.exports = {
             },
             // 绘图服务
             'glsms/serve': {
-                //    target: 'http://10.199.143.129:8080', //生产环境
-                // target: 'http://60.205.177.43:28888', //阿里云
+                //  target: 'http://10.199.143.129:8080', //生产环境
                 target: 'http://gcgl.wanda.cn/glsms',
                 changeOrigin: true,
                 pathRewrite: {
@@ -31,6 +31,25 @@ module.exports = {
                 },
             },
         },
+        // 阿里云后台服务 使用此服务 需要更改环境变量.env.development 改为  ==> VUE_APP_BaseURL=
+        // proxy: {
+        //     '/data': {
+        //         target: 'http://60.205.177.43', //阿里云
+        //         changeOrigin: true,
+        //         secure: false,
+        //         pathRewrite: {
+        //             '^/data': '/data',
+        //         },
+        //     },
+        //     // 绘图服务
+        //     '/serve': {
+        //         target: 'http://60.205.177.43:8080', //阿里云
+        //         changeOrigin: true,
+        //         pathRewrite: {
+        //             '^/serve': '',
+        //         },
+        //     },
+        // },
         hot: true,
         // 关闭esline
         overlay: {
@@ -43,11 +62,9 @@ module.exports = {
         config.output.chunkFilename('static/js/[name].[hash].js').end()
     },
     lintOnSave: false,
-    // 测试包路径修改
-    // publicPath: process.env.VUE_APP_RealEnv === 'alyTest' ? '/wandaBmGuideH5Test' : '/wandaBmGuideH5',
-    // // 打包名称
-    // outputDir: process.env.VUE_APP_RealEnv === 'alyTest' ? 'wandaBmGuideH5Test' : 'wandaBmGuideH5',
-    publicPath: '/glsms/wandaBmGuideH5', //生产域名,需要加 glsms
+    // 路径
+    publicPath: process.env.VUE_APP_PublicPath, // 基础路径,在各个环境变量中配置
+    // 打包名称
     outputDir: 'wandaBmGuideH5',
     // 放置生成的静态资源 (js、css、img、fonts) 的 (相对于 outputDir 的) 目录
     assetsDir: 'static',