• 获取前端项目

    网盘密码【handhand】。

    如果您使用的是海马汇提供的种子工程,之后您可以【跳过】这一页文档,直接开始环境搭建即可开始开发使用。

    如果您使用的是其他的基于hzero(1.0.0或以上)开发的工程(不推荐),那么您需要额外做一点操作

    1. 首先,您需要下载这么一个ueditor压缩包解压到您项目的public文件夹下,这个压缩包里的内容为Ueditor的源码,由于海马汇的图文内容使用了秀米,秀米仅支持Ueditor编辑器,Ueditor已经荒芜多年,仅剩源码版本。那么此时public目录下,应该是有public/src/components/hipsUeditor这么一个文件夹。 随后打开src/index.js,加入两行代码,以在项目启动时(异步地)加载Ueditor。还需要下载这么一个ckeditor压缩包,解压在public/lib下,即public/lib/ckeditor
    // 轮播图闪屏的秀米富文本
    import * as loadEditor from 'hippius-front/lib/components/hipsEditor/loadEditor';
    
    // other codes
    
    // 轮播图闪屏的秀米富文本
    loadEditor.load();
    
    1. 在您的项目的package.json里的依赖(大白话就是,在那堆hzero-front-xxx的后面),加上如下依赖,请按需修改版本号。

      "hippius-front": "^0.3.0",
      "hippius-front-analyse": "^0.3.0",
      "hippius-front-app": "^0.3.0",
      "hippius-front-contact": "^0.3.0",
      "hippius-front-msggroup": "^0.3.0",
      "hippius-front-subapp": "^0.3.0"
      
    2. 在您项目的src/utils/getModuleRouters.js文件下,引入以下路由。

      import * as hippiusFrontAnalyse from 'hippius-front-analyse/lib/utils/router';
      import * as hippiusFrontApp from 'hippius-front-app/lib/utils/router';
      import * as hippiusFrontContact from 'hippius-front-contact/lib/utils/router';
      import * as hippiusFrontMsggroup from 'hippius-front-msggroup/lib/utils/router';
      import * as hippiusFrontSubapp from 'hippius-front-subapp/lib/utils/router';
      

      并且在文件末尾的数组里,这这些路由加上

      export default app =>
      getModuleRouters(app, [
      hippiusFrontAnalyse,
      hippiusFrontApp,
      hippiusFrontContact,
      hippiusFrontMsggroup,
      hippiusFrontSubapp,
      // other hzero ruotes
      // other your routes
      ]);
      
    3. 修改一下webpack配置config/webpack.config.js

    // 如果webpack配置没改过,那么行数应该没什么偏差
    // 大约80行附近的这个正则,把hippius加上
      // hzero-front 子项目里的node_modules路径
      const hzeroFrontChildNodeModulePathReg = new RegExp(
        `(hippius|hzero)-front\\S*\\${path.sep}node_modules`);
      // hzero-front 子项目代码路径
      const hzeroFrontBuildLibPathReg = new RegExp(
        `(hippius|hzero)-front\\S*\\${path.sep}lib`);
    
    
      // 103行附近
      getLocalIdent: (context, localIdentName, localName) => {
        if (
          (context.resourcePath.includes('node_modules') ||
            context.resourcePath.includes('ant.design.pro.less') ||
            context.resourcePath.includes('choerodon-ui') || // 加上这行
            context.resourcePath.includes('src/index.less')) && (
            context.resourcePath.match(hzeroFrontChildNodeModulePathReg) ||
            !context.resourcePath.match(hzeroFrontBuildLibPathReg) // 排除hzero-front相关依赖
          )
        )
      }
    
    
    // 大约123行附近的这个正则,把hippius加上,搜索【css-loader】所在的对象里的getLocalIdent这个函数里
      const match = context.resourcePath.match(
        new RegExp(`(src|(hippius|hzero)-front\\S*\\${path.sep}lib)(.*)`));
    
    1. 由于hippius-fronthzero-front没有放在同一个私有源上,而是放在了http://mobile-app.hand-china.com/nexus/content/groups/hippius-ui-group/,我们这边做了代理,能访问hzero私有源。 您可以简单地,把出现了hzero私有源http://nexus.saas.hand-china.com/content/groups/hzero-npm-group/的地方替换成http://mobile-app.hand-china.com/nexus/content/groups/hippius-ui-group/。 如果您也使用了自己的私有源,代理一下我们的私有源即可。