легкая рама h5 синтаксический анализ, начать процесс

1, идеи

Мы взяли на себя общую структуру нового управления освещением, быстро ознакомиться с соответствующей конфигурацией способствует быстрому развитию

2, каталог анализ

5526061-db667a9fa50879a9.png

H5 для того, чтобы загрузить

project.json конфигурации приложения
//原生项目
{    "type": "vue",
    "plugins": [
        "jsnative"
    ],
    "env": {
        "product": {
            "appBaseUrl": "xxxx/appServer/" //默认地址
        }
    }
}

Конфигурация адреса сети
appBaseUrl

H5 старт

index.html точка входа для запуска приложений
<html>
    <head>
        <title>和信基金</title>
        <style/>
        <link rel="stylesheet" href="./css/web.css">
    </head>
    <body>
        <div class="wxmask"></div>
        <div id="main">
            <view id="index" /> //页面挂载
                       <view id="login" parent="index" async="true" />
                      <view id="home" home="true" parent="index" async="true"/>
                 </div>
                <script src="app.js"></script>
    </body>
<html>

Анализ код
1, необходимо написать страницу в главной регистрации
зрения страницы каталога выгрузки , соответствующем
2, глобальный CSS CSS / web.css
. 3, основной app.js входа приложения

app.js глобальной универсальной логики приложений главный вход
import App from "light"
import service from '@/service/plugin';
App.Vue.use(service);

App.filter("start",function (next) {
    //启动拦截器
    App.log("app started...");
    // 加载配置文件
    service.load('./static/config.json').then(next)
}).filter("route",function (from, to, next) {
    //视图拦截器
    App.log(`view changed:${from.path}--${to.path}`);
    next();
}).start();

1, приложение перед началом перехвата
запуска --- нагрузки (./static/config.json) выполнен с возможностью загрузки данных о
маршруте --- журнал (вид изменен: { from.path} - {to.path}); Печать страницы Перейти

plugin.load -> config.js / Config -> CONFIG-generated.js

Процесс загрузки конфигурации конфигурации

plugin.load (./ статическая / config.json)

config.js код

import configDynamic from './config-generated';
for (var key in configDynamic) {
  config[key] = configDynamic[key];
}
export default config;

plugin.js код

import Light from "light"
import Config from '@/config';

  load (url, timeout = 1000) {
    return new Promise((resolve) => {
      Light.fetch({
        method: 'GET',
        url: url,
        type: 'json',
        timeout: timeout
      }, function (res) {
        let config = res.ok && res.data ? res.data : {};
        // 赋值到原配置文件,相同字段会被覆盖
        for (var key in config) {
          if (config[key]) {
            Config[key] = config[key];
          }
        }
        resolve(config);
        // 加载配置文件失败
      })
    })
  }

1, config.js файл загрузить конфигурационный файл-generated.js с параметрами расширения
2、json 赋值到原配置文件,相同字段会被覆盖 最终以“./static/config.json”为准

Монтаж Java Native код

. GmuManager.getInstance () openGmu (SplashNetActivity.this " ГМУ: // главный ", NULL, NULL);
. GmuManager.getInstance () openGmu (SplashNetActivity.this " ГМУ: // войти ", NULL, NULL);

Вид / index.vue
init($);

Перейти на главную страницу

рекомендация

отblog.csdn.net/weixin_33750452/article/details/90821630