1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/dreamcatcher_yxc-qw-admin

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
client-readme.md 9.6 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 02.12.2024 06:56 1b32d29

1. Введение

См. Введение.

2. Структура каталога проекта

  • qw-admin-web/static:
    • apis:
      • assets:
        • animations: библиотека Lottie с анимационными эффектами;
        • libs: содержит некоторые сторонние библиотеки, используемые в проекте;
      • components: компоненты Vue;
      • img: папка с изображениями проекта;
      • layout: используется в проекте;
      • mock: mockjs;
      • pages: файлы страниц;
      • require-config:
        • modules: каталог модулей RequireJS;
        • plugins: каталог плагинов RequireJS;
        • index.js: файл конфигурации RequireJS;
      • router: каталог файлов конфигурации Vue-Router;
      • store: каталог файлов конфигурации Vuex;
      • utils: каталог функций утилит;
      • App.vue: корневой компонент (компонент входа);
      • favicon.ico: значок веб-страницы;
      • index.dev.html: вход в среду разработки;
      • index.html: вход в производственную среду;
      • index.js: входной JS.

3. Конфигурация

3.1. Конфигурация среды разработки

См. index.dev.html, соответствующая конфигурация следующая:

<script type="text/javascript">
    if ('ActiveXObject' in window) {
        var ele = document.getElementById('loading-mask');
        ele.style.display = 'none';
        document.write('对不起,不支持IE,请使用其他非 IE 内核浏览器访问,比如:360、Firefox、Chrome 浏�зарнаер');
    } else {
        // Текущая версия проекта, 
        window.__version__ = '1.1.1';
        // текущая среда dev | prd, в среде разработки будет включена функция source-map и vue-dev-tool.
        window.__env__ = 'dev';
        // текущий базовый путь статического доступа, этот путь должен соответствовать следующим правилам:
        // доступ к [window.__app__]/a.js => qw-admin-web/static/a.js
        window.__app__ = '/web-admin';
        // базовый путь интерфейса API сервера
        window.__server_base_url__ = '/admin';
        // время ожидания ajax
        window.__timeout__ = 180;
        // включена ли функция динамической загрузки, уже реализована, но разработчик считает, что она не очень полезна во время разработки, и временно не предоставляет код реализации на стороне сервера.
        // Если вам это нужно, пожалуйста, оставьте комментарий.
        window.__hot_reload__ = false;
        // динамический адрес загрузки сервера
        window.__hot_reload_server__ = 'http://localhost:8080/imserver';
    }
</script>
<!--Обратите внимание, что номер версии соответствует window.__version__, после каждого обновления статических файлов сервером номер версии будет обновляться, чтобы гарантировать, что кэш клиента становится недействительным -->
 <script type="text/javascript" src="/web-admin/assets/libs/requirejs/require.min.js?browser_spa_version=1.1.1"></script>
    <!--edge 浏览器需要 этот плагин поддержки -->
    <!-- <script type="text/javascript" src="/web-admin/assets/libs/polyfill/polyfill.min.js?browser_spa_version=1.1.1"></script> -->
    <script type="text/javascript" src="./require-config/index.js?browser_spa_version=1.1.1"></script>
    <script type="text/javascript" src="./index.js?browser_spa_version=1.1.1"></script>

3.2. Ключевые настройки проекта

См. require-config/modules/config.js, соответствующие настройки следующие:

define([], function () {
    var process = {
        // текущая рабочая среда
        ENV : window.__env__
    };
    var env = '';

    switch (process.ENV) {
        case 'dev':
        case 'test':
            env = 'development';
            break;
        case 'prd':
            env = 'production';
            break;
    }

    return {
        env: env,
        version: window.__version__ || '1.0',
        timeout: window.__timeout__,
        serverBaseUrl: window.__server_base_url__ || '/admin',
        routerMode: window.__router_mode__ || 'hash',
        // настройка псевдонима начинается здесь, аналогично псевдониму webpack, который можно использовать при загрузке других компонентов из компонента,
        // не следует напрямую писать относительный путь или абсолютный путь, иначе это приведёт к сильной связи между статическим путём ресурса и структурой каталогов,
        // после того как проект станет слишком большим, изменение пути статического ресурса станет очень хлопотным делом.
        alias : {
            '@': window.__app__,
            '@R': window.__app__ + '/require-config',
            '@CMP': window.__app__ + '/components',
            '@IMG': window.__app__ + '/img',
            '@UTIL': window.__app__ + '/utils',
            '@PAGE': window.__app__ + '/pages',
            '@MOCK': window.__app__ + '/mock',
            '@ROUTE': window.__app__ + '/router',
            '@STORE': window.__app__ + '/store',
            '@ASSET': window.__app__ + '/assets',
            '@LAYOUT': window.__app__ + '/layouts',
            '@API': window.__app__ + '/apis',
            '@SERVER_IMGS_BASE_URL' : '/imgs/view/find'
        },
        // глобальный bus, основанный на vue, реализует простой Bus, который может использоваться для межкомпонентного взаимодействия,
        // все события определены здесь, что удобно для импорта в других местах (личные привычки, полезно для совместной разработки несколькими людьми и обслуживания проектов).
        busEvents: {
            // событие тайм-аута сеанса
            SESSION_TIMEOUT: 'SESSION_TIMEOUT',
            // исключение отсутствия полномочий при доступе к ресурсам
            NO_AUTHORITY: 'NO_AUTHORITY',
            // закрыть событие указанной метки в многостраничном режиме
            CLOSE_PAGE: 'CLOSE_PAGE_TAB'
        },
        // является ли текущая среда средой разработки
        isDev: function() {
            return this.env === 'development';
        }
``` Вот перевод текста на русский язык:
{{ yesterday.fx }} {{ yesterday.low }} {{ yesterday.fl | removeCDATA }} {{ yesterday.type }}
<script lang="es6"> module.exports = asyncRequire([ 'alias!@API/test/index', 'lodash' ], (TestAPI, _, resolve, reject) => { resolve({ name: 'test2-page', data () { return { city: '昆明', forecast: [], wendu: 0, ganmao: '', yesterday: { date: '', fl: '', fx: '', high: '', low: '', type: '' } } }, filters: { removeCDATA (str) { let reg = /^\$/; if(reg.test(str)) { return reg.exec(str)[1]; } return str; } }, mounted () { this.fetchWeathData(); }, methods: { fetchWeathData () { TestAPI.queryWeather(this.city) .then(resp => { if(resp.status === 200 && resp.data.status === 1000) { return resp.data.data; } return Promise.reject(resp.desc); }) .then(data => { // es6 解析复制不能用, babel 插件解析不了... this.forecast = []; data.forecast.forEach(item => this.forecast.push(item)); this.wendu = data.wendu; this.ganmao = data.ganmao; this.$set(this, 'yesterday', data.yesterday); }) .catch(errMsg => this.$message.error(errMsg)); } } }); }); </script> <style scoped> div.wrapper { padding: 5px 15px; background-color: #FFF; } </style>

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/dreamcatcher_yxc-qw-admin.git
git@api.gitlife.ru:oschina-mirror/dreamcatcher_yxc-qw-admin.git
oschina-mirror
dreamcatcher_yxc-qw-admin
dreamcatcher_yxc-qw-admin
master