Criando componentes com esquemas Angular
Dentro do kit de ferramentas do desenvolvedor, IBM fornece esquemas Angular para gerar rapidamente componentes com código inicial que você pode usar em aplicativos. Os componentes incluem páginas de pesquisa, tabelas e detalhes de campo.
- O backend do sistema de Sterling™ Order Management.
- Sterling Intelligent Promising Inventory Visibility inquilinos.
- Outros locatários de microsserviços.
- As bibliotecas Carbon UI usadas em páginas existentes.
Antes de iniciar
- Extraia o Hub de pedidos de próxima geração código. Para mais informações, veja Primeiros passos com a personalização do Order Hub de próxima geração.
- Execute o seguinte comando para definir o
strict-sslpara falso.npm config set "strict-ssl" false - Acesse o IBM-forneceu esquemas executando o seguinte comando para reinstalar a versão mais recente do @buc/schematics. Para o Angular v15, execute o seguinte comando.
Para o Angular v18, execute o seguinte comando.npm uninstall -g @buc/schematics npm install -g ./lib/buc/schematics/schematics-v3latest.tgznpm uninstall -g @buc/schematics npm install -g ./lib/buc/schematics/schematics-v4latest.tgz - Para obter ajuda com um script esquemático, execute.
ng g @buc/schematics:<component> --help - Crie componentes.
Criando um componente de página de pesquisa
Criar umasearch page componente para que os usuários especifiquem critérios de pesquisa e pesquisem dados.
search-panel esquema cria o componente da página de pesquisa e inclui código para oferecer suporte aos seguintes recursos:- Uma trilha de migalhas
- Salvar busca função
- Personalize os critérios de pesquisa função
- Procurar por agrupamentos

Procedimento
- Abra um terminal e vá até o módulo onde deseja adicionar o componente. Por exemplo,devtoolkit_docker/orderhub-code/buc-app-order .
- Crie o componente executando o seguinte comando.
Parâmetrosng g @buc/schematics:search-panel --name <name> \ --json-file-path <json-file-path> \ --translation-file-path <translation-file-path> \ --shared-lib <shared-lib> \ --path <path> \ --json-file-name <json-file-name> \ --project <project-name> \ --skip-import- nome
- (Obrigatório) O nome do componente.
- caminho do arquivo json
- (Obrigatório) O caminho para onde você deseja atualizar ou criar o arquivo de configuração (search_fields.json ). Por exemplo,packages/order-shared/assets/buc-app-order .
- caminho do arquivo de tradução
- (Obrigatório) O caminho para onde você deseja atualizar ou criar os literais de tradução (en.json) . Por exemplo,packages/order-shared/assets/buc-app-order/i18n .
- biblioteca compartilhada
- (Obrigatório) O nome da pasta da biblioteca compartilhada.
- caminho
- (Opcional) O caminho para criar o arquivo do componente, relativo ao módulo atual. Por padrão, uma pasta com o mesmo nome do componente é criada na pasta raiz do módulo.
- nome do arquivo json
- (Opcional) Por padrão, o esquema é atualizadosearch_fields.json com dados de teste. Se você precisar atualizar ou adicionar seu objeto a um arquivo diferente, use este parâmetro. Se você especificar um nome de arquivo que não existe na pasta de ativos, um novo arquivo será criado.
- projeto
- (Obrigatório) O nome da pasta do pacote na qual o esquema está sendo criado. Por exemplo, criando um componente de resultado de pesquisa em packages/order-search-result, o nome do projeto será order-search-result.
ng g @buc/schematics:search-panel --name my-sample --path packages/order-search/src-custom/app/features/search --json-file-path packages/order-shared/assets/buc-app-order --translation-file-path packages/order-shared/assets/buc-app-order/i18n --shared-lib order-shared --project order-search --skip-import - O esquema cria o novo componente e atualiza os arquivos compartilhados. A saída no terminal resume os arquivos que foram criados e atualizados.
Criando um componente de página de resultados de pesquisa
Criar umasearch results page componente para exibir os resultados depois que um usuário executa uma consulta no componente da página de pesquisa.
search-result-component o esquema gera dois componentes:- Um componente de resultado de pesquisa.
- Um componente de tabela (BaseTableComponent tipo), cujo seletor está incluído no modelo de componente de resultado da pesquisa.

- Abra um terminal e vá até o módulo onde deseja adicionar o componente. Por exemplo,devtoolkit_docker/orderhub-code/buc-app-order .
- Crie o componente da página de resultados de pesquisa executando o comando a seguir. O esquema cria o componente e atualiza o objeto de roteamento de amostra para o componente de resultado da pesquisa no módulo de roteamento mais próximo.
Parâmetrosng g @buc/schematics:search-result-component --name <name> \ --path <resultsPageComponentPath> \ --table-path <tableComponentPath> \ --json-file-path <json-file-path> \ --translation-file-path <translation-file-path> \ --shared-lib <shared-lib> \ --project <project-name> \ --skip-import- nome
- (Obrigatório) O nome do componente.
- caminho do arquivo json
- (Obrigatório) O caminho para onde você deseja atualizar ou criar o arquivo de configuração (buc-table-config.json) .
- caminho do arquivo de tradução
- (Obrigatório) O caminho para onde você deseja atualizar ou criar os literais de tradução (en.json ).
- biblioteca compartilhada
- (Obrigatório) O nome da pasta da biblioteca compartilhada.
- caminho
- (Opcional) O caminho para criar o componente de resultado da pesquisa, relativo ao módulo atual. Por padrão, uma pasta com o mesmo nome do componente é criada na pasta raiz do módulo.
- caminho da tabela
- (Opcional) O caminho para criar o componente da tabela, relativo ao módulo atual. Por padrão, uma pasta com o mesmo nome do componente é criada na pasta raiz do módulo.
- nome do arquivo json
- (Opcional) Por padrão, o esquema é atualizadobuc-table-config.json com dados de teste. Se você precisar atualizar ou adicionar seu objeto a um arquivo diferente, use este parâmetro. Se você especificar um nome de arquivo que não existe na pasta de ativos, um novo arquivo será criado.
- projeto
- (Obrigatório) O nome da pasta do pacote na qual o esquema está sendo criado. Por exemplo, criando um componente de resultado de pesquisa em packages/order-search-result, o nome do projeto será order-search-result.
ng g @buc/schematics:search-result-component --name my-sample --path packages/order-search/src-custom/app/features/search --table-path packages/order-search/src-custom/app/features/search --json-file-path packages/order-shared/assets/buc-app-order --translation-file-path packages/order-shared/assets/buc-app-order/i18n --shared-lib order-shared --project order-search --skip-import - O esquema cria o novo componente e atualiza os arquivos compartilhados. A saída no terminal resume os arquivos que foram criados e atualizados.
Criando um componente Tabela
Criar umatable componente para exibir dados em uma tabela.
- ClientSidePaginationBaseTableComponent:Para paginação do lado do cliente, onde todas as entradas de linha da tabela são recuperadas em uma chamada de API.
- BaseTableComponent:Para resultados baseados em páginas do lado do servidor da API.

- Abra um terminal e vá até o módulo onde deseja adicionar o componente. Por exemplo,devtoolkit_docker/orderhub-code/buc-app-order .
- Crie o componente da tabela executando o comando a seguir.
Parâmetrosng g @buc/schematics:table-component --name <name> \ --extend <extendableClassName> \ --json-file-path <json-file-path> \ --translation-file-path <translation-file-path> \ --path <path> \ --project <project-name> \ --skip-import- nome
- (Obrigatório) O nome do componente.
- ampliar
- (Opcional) O nome da classe de tabela extensível. Os valores válidos são ClientSidePaginationBaseTableComponent ou BaseTableComponent. Se você não especificar um valor no comando, será solicitado no terminal que você escolha um componente. Em Git Bash para Windows, o parâmetro extend é obrigatório.
- caminho do arquivo json
- (Obrigatório) O caminho para onde você deseja atualizar ou criar o arquivo de configuração (buc-table-config.json) .
- caminho do arquivo de tradução
- (Obrigatório) O caminho para onde você deseja atualizar ou criar os literais de tradução (en.json ).
- caminho
- (Opcional) O caminho para criar o arquivo do componente, relativo ao módulo atual. Por padrão, uma pasta com o mesmo nome do componente é criada na pasta raiz do módulo.
- nome do arquivo json
- (Opcional) Por padrão, o esquema é atualizadobuc-table-config.json com dados de teste. Se você precisar atualizar ou adicionar seu objeto a um arquivo diferente, use este parâmetro. Se você especificar um nome de arquivo que não existe na pasta de ativos, um novo arquivo será criado.
- projeto
- (Obrigatório) O nome da pasta do pacote na qual o esquema está sendo criado. Por exemplo, criando um componente de resultado de pesquisa em packages/order-search-result, o nome do projeto será order-search-result.
ng g @buc/schematics:table-component --name my-sample2 --extend ClientSidePaginationBaseTableComponent --json-file-path packages/order-shared/assets/buc-app-order --translation-file-path packages/order-shared/assets/buc-app-order/i18n --path packages/order-search/src-custom/app/features/search --project order-search --skip-import - O esquema cria o novo componente e atualiza os arquivos compartilhados. A saída no terminal resume os arquivos que foram criados e atualizados.
Como referência, o tutorial a seguir cria componentes de tabela com esquemas do Angular: Tutorial: Personalização da página de resultados de pesquisa do Inventário.
Criando um componente Campo
Criar umaField componente para exibir detalhes de um registro específico. Por exemplo, datas de pedido, linhas de pedido e informações do nó de envio de um pedido.
- Field component:Para exibir atributos na área de conteúdo de uma página.
- Summary component:Para exibir atributos no painel lateral direito de uma página de detalhes.

- Abra um terminal e vá até o módulo onde deseja adicionar o componente. Por exemplo,devtoolkit_docker/orderhub-code/buc-app-order .
- Crie o componente de campo executando o comando a seguir.
Parâmetrosng g @buc/schematics:summary-component \ --name <name> \ --json-file-path <json-file-path> \ --translation-file-path <translation-file-path> \ --is-summary-panel <true|false> \ --path <path> \ --project <project-name> \ --skip-import- nome
- (Obrigatório) O nome do componente.
- caminho do arquivo json
- (Obrigatório) O caminho para onde você deseja atualizar ou criar o arquivo de configuração (buc-field-details.json ).
- caminho do arquivo de tradução
- (Obrigatório) O caminho para onde você deseja atualizar ou criar os literais de tradução (en.json ).
- é-painel de resumo
- (Opcional) Booleano para determinar o tipo de componente a ser criado. Especificamos verdadeiro para criar um componente Resumo. Especificamos falso para criar um componente Field. O valor padrão é true .
- caminho
- (Opcional) O caminho para criar o arquivo do componente, relativo ao módulo atual. Por padrão, uma pasta com o mesmo nome do componente é criada na pasta raiz do módulo.
- nome do arquivo json
- (Opcional) Por padrão, o esquema é atualizadobuc-field-details.json com dados de teste. Se você precisar atualizar ou adicionar seu objeto a um arquivo diferente, use este parâmetro. Se você especificar um nome de arquivo que não existe na pasta de ativos, um novo arquivo será criado.
- projeto
- (Obrigatório) O nome da pasta do pacote na qual o esquema está sendo criado. Por exemplo, criando um componente de resultado de pesquisa em packages/order-search-result, o nome do projeto será order-search-result.
ng g @buc/schematics:summary-component --name my-sample --path packages/order-search/src-custom/app/features/search --json-file-path packages/order-shared/assets/buc-app-order --is-summary-panel true --project order-search --skip-import - O esquema cria o novo componente e atualiza os arquivos compartilhados. A saída no terminal resume os arquivos que foram criados e atualizados.
- Se você criou um Componente de campo, edite o arquivo HTML gerado para passar o parâmetro header para especificar um rótulo para a guia. Por exemplo, se você se referir ao captura de tela, a guia ativa terá o rótulo "Detalhes". O rótulo "Detalhes" é especificado adicionando um cabeçalho com o caminho para o literal de tradução noen.json arquivo:
[header]="'SHIPMENT_DETAILS.SHIPMENT_TABS.SHIPMENT_DETAILS'"