WebApp【公共组件库】@前端(For Git Submodule)
Tevin
2022-07-16 1df4c2f070e8105aedf16437f8124b4d692b47d0
bases/HostBoot.js
@@ -5,6 +5,7 @@
import project from '@project';
import { Tools } from '@components/common/Tools';
import { $localStorage } from '@components/common/LocalStorage';
export class HostBoot {
@@ -27,9 +28,9 @@
    /**
     * 创建主机类型
     * @param {string} typeName
     * @param {boolean} [isDefault=false]
     * @param {string} [isDefault='']
     */
    createHostType(typeName, isDefault = false) {
    createHostType(typeName, isDefault = '') {
        if (isDefault === 'default') {
            this._data.defaultHostType = typeName;
        }
@@ -93,6 +94,11 @@
                type: typeName,
            };
        }
        // 如果有缓存,优先使用缓存
        const storageHostTypes = $localStorage.load('HostType');
        if (typeof storageHostTypes[typeName] !== 'undefined') {
            this._data.activeHost[typeName] = storageHostTypes[typeName];
        }
    }
    _matchHostName(host) {
@@ -129,8 +135,18 @@
            host: host2,
            type: typeName,
        };
        // 存储自定义主机配置
        const storageHostTypes = $localStorage.load('HostType');
        storageHostTypes[typeName] = this._data.activeHost[typeName];
        $localStorage.save('HostType', storageHostTypes);
    }
    /**
     * 清除主机类型缓存
     */
    cleanHostStorage() {
        $localStorage.remove('HostType');
    }
    /**
     * 判断是否为本地开发模式
@@ -171,6 +187,10 @@
        return this._data.activeHost[typeName].name;
    }
    /**
     * 是否开启本地 mock
     * @return {boolean}
     */
    isOnMock() {
        if (this.isDevMod()) {
            return this.getHostName() === 'lc';