php 单页面应用,基于 Vue Router 构建单页面应用项目骨架

5c5990739b421b117b8aae77331c0e0f.png

今天开始,学院君将花几个篇幅的教程给大家快速过一下如何基于 Laravel 框架进行单页面应用开发。

一、初始化项目和前端依赖

开始之前,先通过如下步骤初始化一个新的 Laravel 项目作为单页面应用演示项目:

// 1、初始化 Laravel 项目

laravel new demo-spa

// 2、安装 laravel/ui 扩展包

cd demo-spa

composer require laravel/ui

php artisan ui vue

// 3、安装 & 编译前端依赖

npm install && npm run dev

二、安装 Vue Router 和 Vuex

要基于 Vue 框架构建单页面应用,Vue Router 和 Vuex 是不可或缺的前端依赖库,前者是 Vue 官方提供的前端页面路由管理器,后者是 Vue 官方提供的前端组件状态(数据)管理器。关于这两个依赖库的语法细节这里不展开了,你可以参考对应的官方文档或者网上视频进行更深入的了解。

我们可以在 demo-spa 项目根目录下通过如下命令安装这两个前端依赖:

npm install vue-router vuex --save-dev

安装完成后,就可以在 resources/js/app.js 中引入并使用它们了,以 Vue Router 为例,我们可以在 resources/js 目录下新建一个 routes.js 作为前端路由文件,然后在 app.js 中这样通过 Vue Router 引入前端路由:

window.Vue = require('vue');

import VueRouter from 'vue-router';

import routes from './routes';

Vue.use(VueRouter);

...

const app = new Vue({

el: '#app',

router: new VueRouter(routes)

});

三、编写前端页面组件

为了演示前端路由的使用,我们先在 resources/js/components 目录下新建两个页面组件Home.vue:

Home Page

export default {}

和 About.vue:

About Page

export default {}

四、编写前端路由导航

接下来,我们在前端路由文件 resources/js/routes.js 中编写几个测试路由:

export default {

mode: 'history',

routes: [

{

path: '/',

component: require('./components/Home').default

},

{

path: '/about',

component: require('./components/About').default

}

]

}

这里我们使用了 HTML5 History 模式 在不同前端路由之间实现页面无刷新切换。

五、在 HTML 视图中渲染前端路由导航

做好上述准备工作后,就可以在 HTML 视图模板中通过如下方式渲染通过 Vue Router 路由匹配到的前端页面组件了:

Laravel

Home

About

六、测试前端路由导航组件渲染

运行 npm run dev 重新编译前端资源,在运行 php artisan serve 启动 Web 服务器,在浏览器中访问 http://127.0.0.1:8000/,即可看到默认渲染的 Home 页面:

ebd2617ad4b565adeff3f826f78c4c96.png

点击「About」链接,即可切换到 About 页面:

59bf9bb97286f2b5afe739857bf6bc27.png

这样,我们就基于 Vue Router 构建起了一个非常简单的单页面应用项目骨架。下篇教程我们将通过对页面组件进行布局来构建更加复杂的单页面应用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值