Преглед на файлове

chore: enable features by env file

Casper Dai преди 3 години
родител
ревизия
ffbe474d4f
променени са 6 файла, в които са добавени 22 реда и са изтрити 13 реда
  1. 6 0
      .env
  2. 0 3
      .env.development
  3. 0 2
      .env.production
  4. 3 3
      .env.staging
  5. 4 0
      .env.xuzhou
  6. 9 5
      vue.config.js

+ 6 - 0
.env

@@ -1,3 +1,9 @@
+# 未开发的功能组件
+__PLACEHOLDER__ = 'disabled'
+# 传感器
+__SENSOR__ = 'disabled'
+__SENSOR_ELK__ = 'disabled'
+
 # gateway
 VUE_APP_GATEWAY = ''
 

+ 0 - 3
.env.development

@@ -1,6 +1,3 @@
-# just a flag
-ENV = 'development'
-
 #gateway
 # 84服务器
 VUE_APP_GATEWAY = 'isoc.artaplay.com:8443'

+ 0 - 2
.env.production

@@ -1,2 +0,0 @@
-# just a flag
-ENV = 'production'

+ 3 - 3
.env.staging

@@ -1,7 +1,7 @@
-# just a flag
-ENV = 'stage'
+NODE_ENV = 'production'
 
-NODE_ENV = production
+# just a flag
+ENV = 'staging'
 
 # keycloak
 VUE_APP_KEYCLOAK_OPTIONS_URL = 'https://isoc.artaplay.com:8443/auth'

+ 4 - 0
.env.xuzhou

@@ -0,0 +1,4 @@
+NODE_ENV = 'production'
+
+__SENSOR__ = 'enabled'
+__SENSOR_ELK__ = 'enabled'

+ 9 - 5
vue.config.js

@@ -5,19 +5,19 @@ const webpack = require('webpack')
 const port = process.env.port || 9527
 
 const isProd = process.env.NODE_ENV !== 'development'
-const isStaging = process.env.ENV !== 'production'
+const isStaging = process.env.ENV === 'staging'
 
 const features = {
   __VERSION__: JSON.stringify(`v${require('./package.json').version}.${getTimestamp()}`),
   // 未开发完的路由
   __DEV__: !isProd,
   // 预览
-  __PREVIEW__: isStaging,
+  __PREVIEW__: !isProd || isStaging,
   // 未开发的功能组件
-  __PLACEHOLDER__: !isProd || false,
+  __PLACEHOLDER__: isEnable('__PLACEHOLDER__'),
   // 传感器
-  __SENSOR__: !isProd || false,
-  __SENSOR_ELK__: false
+  __SENSOR__: isEnable('__SENSOR__'),
+  __SENSOR_ELK__: isEnable('__SENSOR_ELK__')
 }
 
 const copyFiles = [
@@ -26,6 +26,10 @@ const copyFiles = [
   { file: 'spark-md5.min.js', from: 'spark-md5', to: '.' }
 ]
 
+function isEnable (feature) {
+  return !isProd || process.env[feature] === 'enabled'
+}
+
 function resolve (...dir) {
   return path.join(__dirname, ...dir)
 }