SPScriptedFacet - com escopo

  • Versão de lançamento: Washingtondc
  • Atualizado 1 de fev. de 2024
  • 1 min. de leitura
  • Defina itens de aspecto, filtros ou consultas mapeadas para um objeto de aspecto.

    Você só pode usar a API SPScriptedFacet em um script de geração de aspecto em uma origem de pesquisa Portal de serviços. O script de geração de aspecto só fica visível quando a opção É fonte de script está selecionada.

    Não há nenhum construtor para esta classe. Em vez disso, use os métodos createFacet() ou createMultiChoiceFacet() da classe SPScriptedFacetService para gerar um objeto de aspectos.

    SPScriptedFacet com escopo - addFacetItem(cadeia de caracteres rótulo, objeto valueObj)

    Adiciona itens de aspecto ou consultas mapeadas a um objeto de aspectos.

    Antes de adicionar itens de aspecto a um objeto de aspecto, crie o objeto de aspecto usando os métodos createFacet() ou createMultiChoiceFacet() da classe SPScriptedFacetService.

    Tabela 1. Parâmetros
    Nome Tipo Descrição
    rótulo Cadeia de caracteres O rótulo de exibição do item de aspecto ou da consulta mapeada.
    obj.valor Objeto O item de aspecto ou consulta mapeada para o aspecto. Só pode conter os tipos Cadeia de caracteres, Número, Booliano e Duplo.
    Tabela 2. Retorna
    Tipo Descrição
    vazio
    function createMultiChoiceFacetFromKB(label, variable, values, orderBy){
      if(!values || values.length == 0)
        return;
    
      var kbFacet = facetService.createMultiChoiceFacet(label, variable);
      var kbMap = {};
      for(var i in values) {
        var key = values[i].label;
        var value = values[i].id;
        var parent = new KBParentData().getParentCategory(value, key);
        key = parent.join(' > ');
        kbMap[key] = value;
      }
    
      var labels = Object.keys(kbMap).sort();
      for (i = 0; i < labels.length; i++) {
        var currentLabel = labels[i];
        kbFacet.addFacetItem(currentLabel, kbMap[currentLabel]);
        //adds facet search options for each kbMap entry
      }
    }