Vue FullCalendar 병목 현상
2394 단어 fullcalendarvuelaravel
문제
<full-calendar />
컴포넌트에서 아래와 같은 prop을 통해 이벤트를 추가했습니다.:events="events.records"
이것은
events.records
모든 이벤트에 대해 데이터베이스를 쿼리하고 있었고 더 나은 방법을 찾았습니다!해결책
<full-calendar />
구성 요소에 이벤트를 추가할 때 여러 가지 방법이 있습니다. 저는 이벤트 객체의 배열을 통해 수행하고 있었습니다. 대신 JSON 피드를 통해 이벤트를 추가하고 싶습니다. 이유를 설명하겠지만 아래 코드 스니펫을 확인하세요. 이렇게 하면 됩니다.
eventSources: [
{
url: '/test_events',
method: 'GET',
failure: function() {
alert('there was an error while fetching events!');
},
color: 'yellow', // a non-ajax option
textColor: 'black' // a non-ajax option
},
]
그리고 우리는 그것을 우리의 구성 요소에서 다음과 같이 사용할 수 있습니다.<full-component :event-sources="eventSources" />
. 이와 같은 JSON 피드를 사용하면 URL에 시작 및 종료 쿼리 매개변수가 자동으로 추가되어 이 두 매개변수를 기반으로 데이터를 쿼리할 수 있습니다. URL은 다음과 같습니다.https://localhost/calendar_events?start=2020-08-30T00%3A00%3A00-04%3A00&end=2020-10-11T00%3A00%3A00-04%3A00
이제 이 쿼리를 실행하는 대신:
$events = $request->user()->events()->get();
return response()->json($events);
모든 결과를 반환하는 경우 다음 쿼리를 실행할 수 있습니다.
$start = $request->start;
$end = $request->end;
$events = $request->user()->events()->whereBetween('start', [$start, $end])->get();
return response()->json($events);
주어진 매개변수를 기반으로 한 결과만 반환합니다.
결론
Laravel을 사용할 때 이와 같은 것을 잡는 데 도움이 되도록 Laravel 디버그 바 패키지를 사용해야 합니다. 바라건대, 이 기사가 미래에 누군가가 이와 같은 실수를 하는 데 도움이 되길 바라며, 이를 더욱 개선할 수 있는 방법을 알고 있다면 아래 댓글로 알려주세요.
Reference
이 문제에 관하여(Vue FullCalendar 병목 현상), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://dev.to/jringeisen/vue-fullcalendar-bottleneck-5dim
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
eventSources: [
{
url: '/test_events',
method: 'GET',
failure: function() {
alert('there was an error while fetching events!');
},
color: 'yellow', // a non-ajax option
textColor: 'black' // a non-ajax option
},
]
$events = $request->user()->events()->get();
return response()->json($events);
$start = $request->start;
$end = $request->end;
$events = $request->user()->events()->whereBetween('start', [$start, $end])->get();
return response()->json($events);
Laravel을 사용할 때 이와 같은 것을 잡는 데 도움이 되도록 Laravel 디버그 바 패키지를 사용해야 합니다. 바라건대, 이 기사가 미래에 누군가가 이와 같은 실수를 하는 데 도움이 되길 바라며, 이를 더욱 개선할 수 있는 방법을 알고 있다면 아래 댓글로 알려주세요.
Reference
이 문제에 관하여(Vue FullCalendar 병목 현상), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/jringeisen/vue-fullcalendar-bottleneck-5dim텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)