Incluindo novas rotas para aplicativos existentes

É possível customizar aplicativos incluindo novas rotas nos aplicativos. Use o comando schematics para criar os pacotes para cada rota e atualizar os arquivos no aplicativo.

Procedimento

  1. Abra um terminal e acesse o diretório de códigos Order Hub .
    • Para clientes de nuvem, o local padrão é devtoolkit_docker/orderhub-code..
  2. Acesse o módulo que você deseja customizar Por exemplo, se desejar atualizar o módulo de pedido, acesse a pasta buc-app-order . Por exemplo:
    cd devtoolkit_docker/orderhub-code/buc-app-order
  3. Abra o app-config.json que está no módulo que você deseja customizar e inclua as novas rotas que deseja incluir no aplicativo.
  4. Execute o seguinte comando schematics. Esse comando cria os pacotes para cada nova rota e atualiza os arquivos necessários no aplicativo.
    ng g @buc/schematics:add-app-to-existing-monorepo --app-config-json app-config.json --module-short-name short-name-for-the-module --prefix selector-prefix
    O esquema suporta as opções a seguir.
    --app--config-json
    Essa opção é necessária Use o arquivo app-config.json existente no módulo que você deseja customizar
    --module-short-name
    O nome abreviado para o módulo Se o nome do módulo tiver traços, o nome abreviado será o texto após o último traço. Por exemplo, se o nome do módulo for buc-app-settings, o nome abreviado do módulo será settings..
    --prefix
    O seletor HTML para usar para os componentes gerados. O padrão é buc..
    --is-custom-app
    Indica se o repositório atual é ou não um aplicativo customizado. Use true para indicar que o repositório atual é um aplicativo customizado ou use false para um aplicativo Order Hub existente. O padrão é false.
    Por exemplo,
    ng g @buc/schematics:add-app-to-existing-monorepo --app-config-json app-config.json --module-short-name order --prefix buc
  5. Teste as rotas customizadas localmente abrindo o arquivo overrides.json no módulo e modificando o objeto para que a nova rota seja "use Prod":false.
    Por exemplo,
        "custom-route": {
          "useProd": false
        }
  6. Se necessário, crie um novo menu.. Para obter mais informações, consulte Testando novos aplicativos ou rotas no Order Hub.
  7. Para ver as mudanças no servidor local execute yarn start-app.
  8. Crie o arquivo features.json .
    1. Efetue login no Order Hub.
    2. Alterne para o locatário de customização no qual você testou suas customizações.
    3. Acesse Configurações > Customização.
    4. Selecione o item customizado que ativa sua rota.
    5. Se você desejar implementar customizações para o locatário de customização no qual testou suas customizações, assegure-se de selecionar Hospedado pela IBM e de limpar Ambiente de desenvolvimento local Caso contrário, o locatário continuará a se conectar ao servidor local.
    6. No campo URL relativo, adicione o caminho relativo à sua rota /<module-name>/<route-name>. Comece com uma barra (/). Não é necessário incluir uma barra no final. Por exemplo, /buc-app-order/create-order.
    7. Salve todas as alterações.
    8. Copie o JSON do campo Json do recurso na IU. Cole ou mescle o JSON como um elemento de matriz no arquivo features.json que está no diretório raiz do módulo. O JSON da IU é semelhante à amostra a seguir.
      {
          "featureId": "custom-[Id]", // must be unique
          "state": "ACTIVE",
          "sequence": 0,
          "title": "[Title to display for the custom application]",
          "iconName": "website-20",
          "link": "/[module-name]/[path to new route]",
          "path": "/[module-name]/[path to new route]",
          "hidden": true,
          "allowedRoles": [   //the roles that can access this customization
            "Fulfillment Manager",
            "Tenant Administrator"
          ],
          "description": [
            {
              "locale": "en_US",
              "language": "en",
              "title": "Title to display for the custom feature"
            }
          ],
          "type": "IFRAME"
        }
      Dependendo do conteúdo no features.json, pode ser necessário colocar o código entre colchetes [] para incluir como um elemento de matriz.
    9. Para implementação, mude o link para ter o caminho absoluto como no exemplo a seguir.
      "link": https://static.omsbusinessusercontrols.ibm.com/buc-app-order/custom-route/order/home
  9. Abra o arquivo <order_hub_code_directory>/<module-name>/package-customization.json .. No objeto de rotas, inclua cada rota no módulo customizado.
    Por exemplo,
    {
      "repositoryName": "buc-app-order",
      "customizationContextRoot": "/order-management-customization",
      "routes": {
        "custom-route": {
          "type": "code",
          "custom": true
        }
      }
    }
    
  10. Abra o arquivo ../<module-name>/packages/<route-name>/package.json para cada nova rota customizada. Inclua um script "build-merge" "build-merged-<environment>": "yarn build --deploy-url=<customizationfolder>/<module-name>/<route-name>/". Por exemplo,
    "build-merged-dev": "yarn build --deploy-url=/buc-app-customization/T3R4fagafd45aadfaffasf/buc-app-order/custom-route/"

O que fazer depois

Continue a implementar as rotas customizadas

Para obter mais informações, consulte Implementando novos aplicativos