내 Laravel 프로젝트에서 Vueify를 사용하고 싶습니다. Vueify (* .vue 파일)를 사용하여 다른 Vuejs 구성 요소를 가지고 있습니다. 내 질문은 필요한 파일을 가장 잘 구성하고 브라우저로 보낸 JS 코드를 최적화하는 방법에 관한 것입니다.laravel에서 vueify를 구성하는 방법은 무엇입니까?
기본적으로 내 Vue 인스턴스가 포함 된 블레이드 템플릿에서 직접 이러한 구성 요소를 사용하고 싶습니다. 그러나 * .vue 파일을 컴파일해야하므로 템플릿에서 직접 참조 할 수는 없습니다. 두고, 내가 좋아하는 물건을 의미 : 내 블레이드 템플릿 내에서
import Timeline from "./components/Timeline.vue";
가 작동하지 않습니다.
따라서 구성 요소가 포함 된 Vue 객체를 저장하는 각 블레이드 템플릿에 대한 전용 JS 파일을 만들었습니다. 이것은 옳다고 생각하지 않습니다. 예를 들어이 만들어처럼 내 꿀꺽 파일이 보인다 : 나는 당신이 무슨 뜻인지 아시죠 희망
mix.browserify('models.js', 'public/js/compiled-models.js');
mix.browserify('campaigns.js', 'public/js/compiled-campaigns.js');
mix.browserify('campaigns_edit.js', 'public/js/compiled-campaigns_edit.js');
mix.browserify('product.js', 'public/js/compiled-product.js');
...
. 모든 구성 요소를 단일 app.js 파일에 결합하는 것이 두려웠 기 때문에 그렇게했습니다. 나는 여기에 갈 길이 란 것에 대한 어떤 정보도 찾지 못했습니다.
기본적으로 나는 모든 * .js 파일을 제거하는 것이 좋겠다. 왜냐하면 그것들은 컴파일 된 구성 요소를 얻는 나의 방법 일 뿐이 기 때문이다. 또는 적어도 "페이지"당 하나의 파일을 만들고 싶지 않습니다.
구성 방법?
글쎄, 나는 서버와 클라이언트간에 교환되는 불필요한 데이터에 관심이있다.하지만 어쩌면 나는 적어도 전체 세션 동안 큰 JS 파일을 캐싱하는 클라이언트에 너무 적은 신뢰감을 갖고있을 것이다. – patriziotomato
해당 파일을 확실히 캐시해야합니다. 응답 헤더 (PHP/Laravel, Apache, Nginx)에 캐싱을 설정하는 여러 가지 방법이 있습니다. 버전 번호 또는 고유 식별자를 쿼리 문자열 또는 파일 이름 부록에 넣어 브라우저가 버전을 변경하면 다시로드합니다. (dev 모드에서는 브라우저 dev 도구를 통해 캐시를 비활성화 할 수 있습니다.) – robbash
내 사례에서는 모두 "body"태그에 바인딩 된 여러 Vue 인스턴스가 어떻게됩니까? 이 상황에서 그들은 충돌하지 않습니까? – patriziotomato