2.1.4 • Published 10 months ago

react-native-lista-selecao-suspensa v2.1.4

Weekly downloads
-
License
MIT
Repository
-
Last release
10 months ago

Lista de seleção do React Native equivalente ao Select do HTML "

  • Estilize-o do seu jeito com adereços de estilo de cada vista.
  • Desempenho suave em todas as plataformas IOS, Android e Web.
  • Alterar família de fontes Facilmente qual seletor de comunidade não tem.
  • Zero dependências

Compatibilidade

iOSAndroidWebExpo

🔌 Instalação

$ npm install react-native-lista-selecao-suspensa

OU

$ yarn add react-native-lista-selecao-suspensa

#🤩 Uso básico para ListaSelecao

import { ListaSelecao } from 'react-native-lista-selecao-suspensa'

const App = () => {

  const [selecionado, setSelecionado] = React.useState("");
  
  const dados = [
      {chave:'1', valor:'Celulares', desabilitado:true},
      {chave:'2', valor:'Aparelhos'},
      {chave:'3', valor:'Câmeras'},
      {chave:'4', valor:'Computadores', desabilitado:true},
      {chave:'5', valor:'food space'},
      {chave:'6', valor:'inottec'},
      {chave:'7', valor:'vitrine'},
  ]

  return(
    <ListaSelecao
        setSelecionada={(val) => setSelecionado(val)} 
        dados={dados} 
        salvar="valor"
    />
  )

};

🤩 Uso básico para ListaSelecaoMultipla

import { ListaSelecaoMultipla } from 'react-native-lista-selecao-suspensa'

const App = () => {

  const [selecionado, setSelecionado] = React.useState("");
  
  const dados = [
      {chave:'1', valor:'Celulares', desabilitado:true},
      {chave:'2', valor:'Aparelhos'},
      {chave:'3', valor:'Câmeras'},
      {chave:'4', valor:'Computadores', desabilitado:true},
      {chave:'5', valor:'food space'},
      {chave:'6', valor:'inottec'},
      {chave:'7', valor:'vitrine'},
  ]

  return(
    <ListaSelecaoMultipla
        setSelecionada={(val) => setSelecionado(val)} 
        dados={dados} 
        salvar="valor"
        selecionada={selecionado} 
        subtituloListaItens="Categorias"
    />
  )

};

Para ao vivo Demo (Expo Snack)

🔧 Adereços Gerais

Aplicável em ambos os componentes ListaSelecao & ListaSelecaoMultipla

NomeTipoDescrição
salvarstringPasse ('chave' ou 'valor') para salvar dados de sua escolha em sua variável de estado local
aoSelecionarFunctionPasse qualquer função que você deseja acionar imediatamente após uma opção ser selecionada
textoCaixaSelecaoStringTexto de espaço reservado que será exibido na caixa de seleção
pesquisarbooleanDefinir como False se você não quiser usar a funcionalidade de pesquisa
maxAlturaNumberAltura máxima do invólucro suspenso a ser ocupado
dadosarray OU arrayobjectDados que serão iterados como opções de selecionar lista
setSelecionadaFunctionPara Definir o valor da opção que será armazenado em seu estado local
iconePesquisaJSX ElementPasse qualquer JSX para este acessório como Texto, Imagem ou Ícone para mostrar em vez do ícone de pesquisa
iconeSetaJSX ElementPasse qualquer JSX para este acessório como Texto, Imagem ou Ícone para mostrar em vez do ícone de divisa
iconeFecharJSX ElementPasse qualquer JSX para este acessório como Texto, Imagem ou Ícone para mostrar em vez de fechar ícone
textoCampoPesquisarStringTexto de espaço reservado personalizado para pesquisa TextInput
selecionadaString ou arrayobjectPassar opção selecionada por padrão String para ListaSelecao OU arrayobject para ListaSelecaoMultipla
fontFamilystringPassar nome da fonte para aplicar globalmente em cada campo de texto do componente
textoItemNaoEncontradostringPasse sua mensagem personalizada se algum resultado da pesquisa retornar vazio
ListaVisivelbooleanControle seu estado suspenso (on & off) alterando seu valor para true ou false

🔧 Adereços de estilo geral

Aplicável em ambos os componentes ListaSelecao & MultipleSelectList

NomeTipoDescrição
estiloCaixaSelecaoObjectEstilos adicionais para caixa de seleção
estiloTextoCaixaSelecaoObjectEstilos adicionais para o texto da caixa de seleção
estiloListaObjectEstilos adicionais para o modo de exibição de rolagem suspenso
estiloItemListaObjectEstilos adicionais para item de lista única suspensa
estiloTextoItemListaObjectEstilos adicionais para texto de itens de lista suspensa
estiloItemDesabilitadoObjectEstilos adicionais para item de lista suspensa desabilitado
estiloTextoItemDesabilitadoObjectEstilos adicionais para texto de itens de lista suspensa desabilitados

🤩 Uso avançado

import { ListaSelecao } from 'react-native-lista-selecao-suspensa'

const App = () => {

   const [selecionado, setSelecionado] = React.useState("");  

   const dados = [      
      {chave:'2', valor:'Aparelhos'},
      {chave:'3', valor:'Câmeras'},
      {chave:'5', valor:'food space'},
      {chave:'6', valor:'inottec'},
      {chave:'7', valor:'vitrine'},
  ]

  return(
    <SelectList 
      aoSelecionar={() => alert(selecionado)}
      setSelecionada={setSelecionado} 
      fontFamily='lato'
      dados={dados}  
      iconeFechar={<FontAwesome name="chevron-down" size={12} color={'black'} />} 
      iconePesquisar={<FontAwesome name="search" size={12} color={'black'} />} 
      pesquisar={false} 
      estiloCaixaSelecao={{borderRadius:0}} 
      selecionada={selecionado}  
    />
  )

};

🤩 Obtendo opções do banco de dados

import { ListaSelecao } from 'react-native-lista-selecao-suspensa'

const App = () => {

  const [selecionado, setSelecionado] = React.useState("");  
  const [dados,setDados] = React.useState([]);
  
  React.useEffect(() => 
    //Obter valores do banco de dados
    axios.get('https://jsonplaceholder.typicode.com/users')
      .then((response) => {
        // Armazenar valores na matriz temporária
        let lista = response.data.map((item) => {
          return {chave: item.id, valor: item.name}
        })
        // Definir variável de dados
        setDados(lista)
      })
      .catch((e) => {
        console.log(e)
      })
  ,[])

  return(
    <SelectList setSelecionada={setSelecionado}  dados={dados}  aoSelecionar={() => alert(selecionado)} />
  )

};

🔧 Adereços adicionais

Aplicável somente em ListaSelecaoMultipla

NomeTipoDescrição
subtituloListaItensstringPassar qualquer cadeia de caracteres a ser colocada em vez do rótulo padrão

🔧 Adereços de estilo adicionais

Aplicável somente em ListaSelecaoMultipla

NomeTipoDescrição
estiloCheckBoxDesabilitadoObjectCaixa de seleção de estilos adicionais desabilitada dentro da lista suspensa
estiloCheckBoxObjectCaixa de seleção Estilos adicionais para ativo
estiloTagObjectEstilos adicionais para emblemas de valores selecionados
estiloTextoTagObjectEstilos adicionais para Texto de selos de valores selecionados
estiloTituloTagObjectEstilos adicionais para rótulo de várias listas de seleção

Para ao vivo Demo (Expo Snack)

Felipe Silva