1

私はLaravel 5.3とVue 2のウェブサイト/ Webアプリケーションを開発しています。SEOは重要ですので、Laravel + Bladeにフロントエンド/クロージャブルセクションを保存したいだけです。 Vue 2.0では、Ajaxを使用してページのコンテンツを読み込む必要がなく、Googleなどのクローラがサイトをクロールしてインデックスを作成できるようになりました。 (AFAIK、GoogleはJSをロードしますが、Ajaxがロードされるのを待たずに、ヒット/ミスします)。特定のルートでvue-routerをディセーブルにしますか。またはSPAバックエンドとSPA以外のフロントエンドを実行する方法は?

しかし、バックエンドでは、VueとVueRouterを使用して完全にSPAに移行したいと考えています。

どのようにして2つを分けるのが最適でしょうか?私が使用し、

# routes.php 

### Laravel/Frontend routes go here (before SPA) ### 

Route::get('/manager/{spaPlage?}', ['middleware' => 'auth', function() { 
    return view('manager.index'); 
}])->where(['spaPlage' => '.*'])->name('manager.index'); 

、その後、Vueの中:これまでの/マネージャー経由で、私は私のバックエンドがアクセスできるようにしたい

私のソリューションは、にある

const routes = [ 
    { path: '/', name: 'dashboard.index', component: require('./pages/manager/Dashboard.vue') }, 
    { path: '/categories', name: 'categories.index', component: require('./pages/manager/categories/Index.vue') }, 
    { path: '/category/:id', name: 'category', component: require('./pages/manager/categories/Category.vue') } 
]; 

const router = new VueRouter({ 
    routes, 
    base: '/manager' 
}) 

const app = new Vue({ 
    el: '#app', 
    router 
    ... 

動作します。ただし、と感じていません。ビュールータはまだ私のフロントエンドにロードされているので(ハッシュ/ハッシュバングを付加する)。

私のLaravelフロントエンドとVue SPAバックエンドを分ける良い方法はありますか?

答えて

0

この問題を抱えている人は、特定のリンクでVueRouterを無効にしても何も見つかりませんでした。私はそれが可能だとは思わない、また、おそらく面倒な価値がない。

私はすべてのコードベースをSPAとして書き直すことに決めました。それは時間がたっており、本当の理由はありません。私はPrerender.ioのSEOなどプレレンダリングのための自己ホストサービスを使用しています

関連する問題