Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Duvida plugin Jquery

Olá, Estou com uma dúvida que foge um pouco do tema da aula. Estou utilizando um plugin (FullCalendar) e estou me batendo no basico.

Segue a parte do código que eu estou me batendo:

    $(document).ready(function() {

        var zone = "03:00"; 

        var tipoUserLogado = $('#tipoUserLogado').val();


        $('#calendar').fullCalendar({

            events: '../EventoController/carregarEventos',
            header: {
                left: 'prev,next today',
                center: 'title',
                right: 'month,agendaWeek,agendaDay'
            },
            //defaultDate: '2017-12-12',
            navLinks: true, // can click day/week names to navigate views
            selectable: true,
            selectHelper: true,
            editable: true,
            eventLimit: true, // allow "more" link when too many events    

            //Codigo continua
                ...

Minha duvida é: O que são os trechos de código separados por virgula? Por exemplo events: "*",

Não sei se fui claro em minha pergunta, estou tentando colocar um alert no meio deste código mas acusa erro

    $(document).ready(function() {

        var zone = "03:00"; 

        var tipoUserLogado = $('#tipoUserLogado').val();


        $('#calendar').fullCalendar({

            events: '../EventoController/carregarEventos',
            header: {
                left: 'prev,next today',
                center: 'title',
                right: 'month,agendaWeek,agendaDay'
            },
            navLinks: true, // can click day/week names to navigate views
            selectable: true,
            selectHelper: true,
            editable: true,

            alert("ola");

            eventLimit: true, // allow "more" link when too many events    

            //Codigo continua
                ...

Erro que surge no console: SyntaxError: missing formal parameter Porque não é possível inserir o alert ali?

Desde já obrigado

2 respostas

Olá João Pedro,

Perceba que como parâmetro da função .fullCalendar você começa a passar propriedades entre chaves {}. Quando utilizamos de chaves e dentro delas utilizamos a sintaxe {chave: valor, chave: valor} dizemos que estamos definindo um objeto JavaScript (JSON).

Todo o código que é escrito entre as chaves define um objeto com informações que a função precisa receber. Por isso que não é possível invocar uma função, como alert, ali.

Essas informações sobre a linguagem em si você encontra na carreira de desenvolvedor JavaScript. Recomendo dar uma olhada nos cursos iniciais pois estão cheios desses recursos fundamentais da linguagem explicados passo a passo.

Abraço!

solução!

O alert no meio do código não funcionou porque essa código é o construtor do calendário. O alert ou algum código seu somente funcionária se estivesse dentro de algum método criado no construtor. Como por exemplo:

$('#calendar').fullCalendar({
    dayClick: function() {
        alert('a day has been clicked!');
    }
});

No exemplo acima, tem um evento chamado dayClick que ocorre quando você clica em qualquer data. Você pode criar para ele uma função anônima, e dentro desta função, colocar a programação que você quer.

O ideal é consultar a documentação do plugin

https://fullcalendar.io/docs/

Esse "events" é um link do seu sistema que vai retornar as informações no formato que ele precisa para marcar as datas, no caso JSON

https://fullcalendar.io/docs/event_data/events_json_feed/

Se você quiser criar a mão as datas, pode seguir este exemplo:

https://fullcalendar.io/docs/event_data/events_array/