Referência de sintaxe de personalização da barra de comandos

A personalização da barra de comandos ajuda a personalizar uma lista para atender a requisitos específicos. O recurso baseado em JSON permite alterações básicas na barra de comandos, incluindo modificação de ícone e/ou texto, ocultação de opções existentes ou reposicionamento de comandos.

commandBarProps

Propriedades para personalização da barra de comandos. Válido em todos os tipos de layouts.

comandos

Uma matriz de objetos JSON é usada para especificar os comandos para personalização.

chave

Propriedade obrigatória para identificar exclusivamente um comando na barra de comandos. As chaves válidas incluem:

'new'
'newFolder'
'newWordDocument'
'newExcelWorkbook'
'newPowerPointPresentation'
'newOneNoteNotebook'
'newFormsForExcel'
'newVisioDrawing'
'upload'
'uploadFile'
'uploadFolder'
'open'
'share'
'copyLink'
'download'
'rename'
'copyTo'
'moveTo'
'delete'
'edit'
'comment'
'editNewMenu'
'powerBI'
'powerBIVisualizeList'
'automate'
'automateCreateRule'
'automateManageRules'
'powerAutomate'
'powerAutomateCreateFlow'
'powerAutomateSeeFlows'
'powerAutomateConfigureFlows'
'aiBuilderCreate'
'aiBuilderGoto'
'aiBuilder'
'alertMe'
'newLink'
'integrate'
'manageAlert'
'powerApps'
'powerAppsCreateApp'
'powerAppsSeeAllApps'
'powerAppsCustomizeForms'
'viewDocumentUnderstandingModels'
'versionHistory'
'openInImmersiveReader'
'classifyAndExtract'
'checkOut'
'checkIn'
'undoCheckOut'
'properties'
'pinItem'
'exportExcel'
'exportCSV'
'export'
'editInGridView'
'exitGridView'
'sync'
'uploadTemplate'
'addTemplate'
'openInOfficeOnline'
'openInOfficeClient'
'addShortcut'
'pinToQuickAccess'
'unpinFromQuickAccess'
'manageForms'
'favoriteCommand'
'createCopilot'
'workflowsCommand'
'quickStepsCommand'
'rulesCommand'
'approvalsCommand'
'Copilot'

⚠️ Atualizações recentes de commandBarCustomization chaves

Algumas chaves no esquema commandBarCustomization foram atualizadas. Para garantir que seu formatador personalizado funcione corretamente, atualize seu JSON existente para refletir essas novas chaves.

Chave Original Nova Chave
new newComposite (Biblioteca de Documentos)
upload UploadCommand
sync syncCommand
addShortcut addShortcutToOneDriveCommand
pinToQuickAccess PinToQuickAccessCommand
pinItem pinItemCommand
properties propertiesCommand
versionHistory versionHistoryCommand (atualmente não funciona)

Além disso, as novas teclas de comando a seguir agora estão disponíveis:

  • stasherContextMenuCommand (Adicionar atalho)
  • stasherCommand.myFiles(Adicionar atalho --> my Files)
  • stasherCommand.otherLocations (Adicionar atalho --> Outros locais)
  • PublishCommand
  • complianceDetails (menu de contexto do botão direito do mouse --> Mais --> Detalhes de conformidade)
  • more (menu de contexto do botão direito do mouse --> Mais)
  • previewFileCommand (menu de contexto do botão direito do mouse --> versão prévia)

Observe que o esquema JSON em https://developer.microsoft.com/json-schemas/sp/v2/command-bar-formatting.schema.json ainda não foi atualizado para refletir essas novas chaves de comando.

Importante

As personalizações da barra de comandos também afetam o menu de contexto do item (menu do botão direito). Se um comando estiver oculto na barra de comandos, ele também ficará oculto no menu de contexto.

Teclas de referência para comandos criados por SPFx ListView Extensões do Conjunto de Comandos

As referências principais acima cobrem os comandos prontos para uso, mas também é comum que os comandos personalizados sejam trazidos por meio das extensões do Conjunto de Comandos ListView da Estrutura do SharePoint (SPFx). Esses comandos também possuem uma chave estática que usa a seguinte convenção de nomenclatura: SpfxCustomActionNavigationCommand_ + id do comando set extension + nome do comando. Os dois últimos podem ser obtidos no arquivo json do manifesto do conjunto de comandos. No exemplo abaixo, a chave para o comando personalizado seria SpfxCustomActionNavigationCommand_2c5694dc-fdd0-444c-bb1e-8b0741af5a11COMMAND_2:

mostra como criar a chave de comando para um comando personalizado criado por meio de uma extensão SPFx ListView Commmand Set

ocultar

Uma propriedade opcional que especifica a condição para ocultar um comando específico. O valor desta propriedade pode ser um booleano, cadeia de caracteres ou um objeto Expression. false é o comportamento padrão (o que significa que o comando é visível). true significa que o comando ficará oculto.

texto

Uma propriedade opcional que especifica o texto a ser exibido como o nome do comando. O valor dessa propriedade pode ser uma cadeia de caracteres ou um objeto Expression. Se o valor não for fornecido, o nome padrão do comando será mostrado.

title

Uma propriedade opcional que especifica o texto da dica de ferramenta a ser exibido no comando. O valor dessa propriedade pode ser uma cadeia de caracteres ou um objeto Expression. Se o valor não for fornecido, a dica de ferramenta padrão do comando será mostrada.

iconName

Uma propriedade opcional que especifica o ícone Interface do usuário do Fluent a ser exibido no comando. O valor dessa propriedade pode ser uma cadeia de caracteres ou um objeto Expression. Se o valor não for fornecido, o ícone padrão do comando será mostrado.

primário

Uma propriedade opcional que especifica a condição para aplicar o estilo do botão principal a um comando. O valor desta propriedade pode ser um booleano, cadeia de caracteres ou um objeto Expression. false é o comportamento padrão (o que significa que o estilo padrão será aplicado). true significa que o estilo do botão principal será aplicado ao comando somente se o comando for colocado na posição 0 na barra de comandos.

O exemplo a seguir mostra um exemplo de barra de comando formatando JSON para fazer o seguinte:

  • Ocultar o comando 'Novo'.
  • Atualize o texto e o ícone do comando 'Editar no modo de exibição de grade' e adicione o estilo do botão principal a ele.
  • Remova o ícone do comando 'Compartilhar' e atualize o texto da dica de ferramenta dele.
{
  "commandBarProps" : {
    "commands": [
      {
        "key": "new",
        "hide": true
      },
      {
        "key": "editInGridView",
        "text": "Quick edit",
        "iconName": "EditTable",
        "primary": true
      },
      {
        "key": "share",
        "iconName": "",
        "title": "Share this List"
      }
    ]
  }
}

position

Uma propriedade opcional que especifica a posição onde o comando será colocado na barra de comandos. O valor dessa propriedade pode ser um número, uma cadeia de caracteres ou um objeto Expression. Se o valor não for fornecido, o comando será colocado em sua posição padrão. Essa propriedade segue a indexação baseada em zero.

sectionType

Uma propriedade opcional que especifica a seção onde o comando personalizado será colocado na barra de comandos. As seguintes cadeias de caracteres são valores válidos para esta propriedade:

  • Primário
  • Transbordar

O exemplo a seguir mostra um exemplo de barra de comando formatando JSON para fazer o seguinte:

  • Coloca o comando 'Novo' na terceira posição na seção principal da barra de comandos.
  • Coloca o comando 'Compartilhar' na segunda posição no menu flutuante da barra de comandos.
  • Coloca o comando 'Alertar-me' na quarta posição na seção primária da barra de comandos.
{
  "commandBarProps" : {
    "commands": [
      {
        "key": "new",
        "position": 2
      },
       {
        "key": "share",
        "position": 1,
        "sectionType": "Overflow"
      },
      {
        "key": "alertMe",
        "position": 3,
        "sectionType": "Primary"
      }
    ]
  }
}

selectionModes

Uma propriedade opcional que especifica os modos de seleção nos quais a customização do comando será aplicada. Se o valor não for fornecido, a personalização será aplicada em todos os modos de seleção em que o comando está disponível. O valor dessa propriedade pode ser uma matriz de cadeias de caracteres em que as seguintes cadeias de caracteres são permitidas:

  • Nenhuma seleção
  • SingleSelection
  • MultiSelection

O exemplo a seguir mostra um exemplo de barra de comando formatando JSON para fazer o seguinte:

  • Atualize o texto do comando 'Compartilhar' se o item selecionado tiver o valor de coluna 'NumberField' 3
  • Atualize o texto do comando 'Excluir' somente se vários itens estiverem selecionados.
{
  "commandBarProps": {
    "commands": [
      {
        "key": "share",
        "selectionModes": [
          "SingleSelection"
        ],
        "text": "=if([$NumberField] == 3, 'Share item 3', 'Share')"
      },
      {
        "key": "delete",
         "selectionModes": [
          "MultiSelection"
        ],
        "text": "Delete multiple items"
      }
    ]
  }
}