基于 Laravel + Vue 构建 API 驱动的 LBS 应用系列教程(十二) —— 为 Vue Router 添加页面布局

Laravel 可以通过 Blade 模板为应用添加页面布局,不过由于我们构建的是单页面应用,可以通过 Vue Router 来实现:创建一个根级页面,其中包含在每个页面都会用到的 Vue 组件,如 Header 和 Footer。使用布局的另一个好处是你可以一次加载所有你需要的 Vuex 数据,它们会随着布局里的组件出现在所有子页面上。 第一步:重新组织嵌套路由 在设置前端路由那篇教程...

基于 Laravel + Vue 构建 API 驱动的 LBS 应用系列教程(十一) —— 通过 Laravel Mix 将 SASS 编译到 Vue 组件

在为单页面应用配置 JavaScript 和 Sass 这篇教程中,我们已经为所有 Sass 资源构建了目录结构,我们可以将 Vue 组件的 Sass 资源放到这些目录中。 第一步:创建变量文件 由于我们使用 Foundation 组件来实现快速格栅功能,包含应用所有 Sass 变量的 _variables.scss 将成为最重要的文件,我们将这个文件放到 resources/asset...

Laravel 5.7 新特性之优化动态调用 Eloquent 模型导致的错误消息

感谢 Bouncer 的开发者 Joseph Silber,在 Laravel 5.7 中,我们可以比以往更轻松地跟踪动态调用 Eloquent 模型导致的错误消息。 你将更清楚地了解具体由于哪个模型缺少方法导致出错,而不是底层对象上让人感到困惑的错误提示: 如果你对该特性的底层实现原理感兴趣,可以查看对应的 pull request 记录。这一功能对那些不了解 Eloquent 模型...

Laravel 5.7 新特性之引入 Laravel Dump Server 扩展包方便本地开发代码调试

在 Laracon US 2018 大会上 Taylor Otwell 宣布会在 Laravel 5.7 中引入 Laravel Dump Server 扩展包(该扩展包将 Symfony 的 Var-Dump Server 引入 Laravel,用于在开发环境收集 dump() 函数输出,并将其打印到控制台或导出到文件),作为开发环境依赖放到 composer.json 文件的 req...

基于 Laravel + Vue 构建 API 驱动的 LBS 应用系列教程(十) —— 在 Vue 组件中使用 Vuex 模块

在本教程中我们将调用之前定义的 API 并使用上一篇教程中创建的 Vuex 模块,我们会在 Vue 组件中使用 Vuex 模块并加载页面所需要的数据。 第一步:设置 Home.vue 组件 在一个 API 驱动的单页面应用中,会首先加载 HTML、CSS 和 JavaScript,这意味着页面会在布局和样式加载之后才加载数据。我们所要做的就是绑定 Home 页面组件的一个声明周期钩子并加...

基于 Laravel + Vue 构建 API 驱动的 LBS 应用系列教程(九) —— 构建 Vuex 模块

在上一篇教程中,我们在 resources/assets/js/api/cafe.js 文件中通过 JavaScript 的 Axios 库构建了一些调用 Laravel 后端 API 路由的方法。在这一篇教程中我们需要将从 API 接口获取的数据保存下来以便在单页面应用中使用,而这正是 Vuex 模块可以大展拳脚的地方。 在 Vuex 文档中将 Vuex 定位成专为 Vue.js 应用...

基于 Laravel + Vue 构建 API 驱动的 LBS 应用系列教程(八) —— 通过 Axios 库构建 API 请求

在上一篇教程中,我们在 Laravel 后端定义好了 API 接口,在本篇教程中,我们将通过 JavaScript 构建 API 请求来访问那些后端 API。由于我们已经配置好了 Vue 和前端路由,构建这些请求应该非常顺利,并且我们还可以通过 Vuex 模块来保存数据。 第一步:配置 config.js 文件 和 .env 类似,config.js 对多环境前端开发来说非常重要,我将所...

基于 Laravel + Vue 构建 API 驱动的 LBS 应用系列教程(七) —— 实现 Laravel 后端 API 接口

在上一篇教程中,我们通过 Vue Router 为 Roast 应用添加了前端路由,现在我们需要为对应的页面提供数据以便渲染。需要注意的是,在 API 驱动的单页面应用中,所有数据都是通过 Ajax 异步加载的,因此,我们需要现在 Laravel 后端提供 API 接口,然后根据接口返回数据通过 Vue 进行渲染。 第一步:设计路由 在提供 API 接口之前,需要先明确提供哪些路由,在上...

基于 Laravel + Vue 构建 API 驱动的 LBS 应用系列教程(六) —— 通过 Vue Router 配置前端路由

单页面应用的实现有赖于 HTML 5 History API,不过现在让你从头学习 HTML 5 History API 肯定不现实,好在 Vue Router 帮我们处理了几乎所有底层操作,比如推入和弹出状态,而且我们通过 Vue 构建应用,使用起来会更加如鱼得水,并且可以和 Vue 中的其他组件无缝对接。 在这篇教程中,我们会设置首页路由、咖啡店列表路由、咖啡店详情页路由、以及新增咖...

Laravel 5.7 新特性系列之新的 URL 生成语法

感谢 Sebastian De Deyne,Laravel 5.7 支持了一种新的控制器动作 URL 生成语法,你之前有可能已经听过这种 URL 生成特性 —— 「元组符号」或者「可调用数组语法」: $url = action([PostsController::class, 'index']); 在当前版本(Laravel 5.6)URL 辅助函数只支持这种风格的控制器动作 URL ...