1、Laravel 如何引入 Bootstrap 如官方文档所言,Laravel 并不强制你使用 CSS 框架,但是开箱提供了对 Bootstrap 的支持,在 resources/js/bootstrap.js...dev 编译前端资源 接下来,我们就可以运行 npm run dev 命令通过 Laravel Mix 来编译前端资源了,该命令定义在 package.json 中: 该命令最终运行的是 npm run...Laravel Mix 是对 Webpack 进行封装后提供给 Laravel 项目使用的前端打包工具,Webpack 是目前最新的、广泛使用的前端资源打包工具(之前还有 Grunt、Gulp 等),能够以模块方式处理所有前端资源...app.scss 中编写代码,引入其它模块,然后运行 npm run dev 就可以了,无需任何额外配置。...后面我们会专门讲一下 Laravel Mix 的各种使用,现在你只需要知道它是怎么回事就好了。
传统 MVC 项目直接升级到前后端分离需要大量的时间与人力,在业务多变的阶段并不适合,所以便有了本文的过渡方案探索 路由先不分离,仍然采用 PHP 提供的路由 模板部分分离,在原 PHP 模板中,引入...Vue 编译后的模板,为此需要约定 # 示例 新建控制器 TestController.php 编译使用 Laravel Mix 工具,这会节省大量前端配置时间 根目录新建文件 webpack.mix.js const fs = require('fs'); const mix = require...# 流程 按照示例配置一个页面 Yarn 安装前端依赖 Yarn 前端编译,此时,PHP 模板中已正确引入 Vue 访问路由,PHP 渲染模板,返回给浏览器 浏览器加载 Vue,交由 Vue 渲染页面.../resources/js 文件夹可以删掉了,编译后的总文件大小约 2.5 M 至此,优化完成,完美解决了开发流程的痛点 # 后记 目前仍在不断地探索中
": "^1.1.6", "laravel-elixir-vue-2": "^0.3.0", "laravel-elixir-webpack-official": "^1.0.10", "laravel-mix...-2') elixir((mix) => { mix.sass('app.scss') .webpack('app.js'); }); webpack.mix.js let mix =...import 的写法自动转换为按需引入的方式 npm i babel-plugin-import -D 在根目录下创建.babelrc文件,并在其中配置plugins(插件) "plugins": [...cnpm i -S amfe-flexible app.js引入 import 'amfe-flexible' 项目中使用 宽度为750px的设计图,由于rootValue: 37.5为基准,在写css...时候设计图上文字大小多少像素就写多少像素即可 cnpm install axios --save 第二 laravel-mix使用postcss-px-to-viewport 在webpack.mix.js
变量使用 全局使用:使用$varaible格式定义变量,比如全局的主题色,可在common.scss中定义,通过@import的方式引用即可 局部使用:在本文件中创建变量$themeColor =...混合使用(mixins) 可在common.scss中使用@mixin varibaleName{}的方式定义 多次重复使用的样式,通过@include的方式应用。...还可以使用@mixin varibaleName(varib1 varib2 varib3){} 的方式传入自定义的属性,进行代码复用,比如可以将 flex布局使用mixin的形式,传入变量使用。...导入 @import 导入,文件扩展名为.scss或.sass 可同时导入多个文件 @import ‘bar’,‘foo’; &使用 在嵌套 CSS 规则时,有时也需要直接使用嵌套外层的父选择器...&还有一个使用情况是: .main{ &-content{}},这里经过编译后就是 .main-content.
Laravel 上面的安装 Laravel 5.4 以上默认已经安装了 Laravel Mix, 在开发机配置了node 和 npm的基础上,仅仅只需要运行下面的命令即可安装: npm install...mix, 它目前可以做的事情就是编译 src/app.js 到 dist/, src/app.scss 到 dist/, 看起来非常简洁优雅。...app.scss构建到public/css/app.css 基本上所有 Laravel Mix的配置和上面的文件都大大同小异。...每次都要手动打版本号确实让人不太爽,但是你可以使用 Laravel Mix de version() 它会自动为所有编译文件的文件名附加一个唯一的哈希值,从而实现更方便的缓存清除功能: mix.js('...因此,你应该在你的视图中使用 Laravel 的全局辅助函数 mix 来正确加载名称被哈希后的文件。
中通常会使用 Sass 编写样式代码,Laravel 默认提供的样式代码也是 scss 结尾的,也是使用的 Sass 语言。...Mix 进行前端资源的编译,当我们通过 npm install 安装 laravel-mix 的过程中,系统会自动安装 laravel-mix 声明的依赖,其中就包括了编译 Sass 所需要的 node-sass...,我们无需再额外安装这个扩展包,这些事情 Laravel Mix 在底层默默帮我们完成了。...目录下独立的 .scss 文件,另一个是 Vue 组件中的 scss"> 中,我们在属性中设置 lang="scss" 表示这里面是 Sass 代码,需要 Laravel...Mix 编译的时候将其编译到指定的 CSS 文件中。
基于 Laravel Mix 引入 Tailwind 在 Laravel 项目中,我们可以基于 Lavavel Mix 快速引入 Tailwind CSS 框架,开始之前,先安装 laravel-mix-tailwind...这个前端依赖包: npm install laravel-mix-tailwind --save-dev 安装完成后,需要在项目根目录下的 webpack.mix.js 中引入它: const mix...= require('laravel-mix'); require('laravel-mix-tailwind'); ......resources/sass/app.scss 中移除 Bootstrap,引入 Tailwind: ... // Bootstrap //@import '~bootstrap/scss/bootstrap...纯手工编写 Tailwind 样式代码 你可以在 resources/views/app.blade.php 中仿照上篇教程给出的 WordPress 博客主题模板手动编写和调试页面布局样式代码如下:
既然已经有这么丰富的资源,关于 Vue.js 的介绍和使用,我这里就不赘述了,我们重点来介绍如何在 Laravel 中通过 Vue 组件构建前端页面和功能。...学习过 Vue.js 之后,你会知道通过 Vue Loader 我们可以在前端通过单文件组件的格式编写 Vue 组件,然后注册、引用,在 Laravel 中我们也是这么干的,这可以极大提高前端代码的复用性...在 标签中定义 HTML 模板代码,以及在 中定义组件的 JavaScript 代码以及导出模块。...CSS 代码,将其改为通过编译后的外部文件引入(Laravel Mix 会自动识别 Vue 组件中的 CSS 代码并将其编译到 app.css 文件中)。...好了,我们已经完成了在 Laravel 中编写第一个 Vue 组件,很简单吧,有了 Vue 组件,以后前端开发和维护会更加高效,想要在 Laravel 中结合 Vue 构建更加复杂的前后端分离应用,可以阅读学院提供的
env.example里的内容复制到.env文件中 4.生成key,命令行:PHP artisan key:generate 5.配置文件package.json,内容如下: { "private"...css' } ] } }); mix.sass('app.scss') .webpack('app.js...') }); 11.命令行(没有gulp,自行下载):gulp watch 关于laravel中使用gulp Elixir编辑前端资源也可以参考:https://onlyke.com/html/665....docs.golaravel.com/docs/5.0/elixir/ 本文章转载自http://blog.csdn.net/sangjinchao/article/details/60596614 在laravel5.4...中有一个更简单的方法,是使用Mix,配置详情请参照 http://laravelacademy.org/post/6798.html
在 Vue 框架中编写单元测试的基本流程和学院君之前在 Laravel 框架和 Go-Micro 微服务框架中编写单元测试时一模一样,只是使用的测试框架和语法有所区别罢了,Laravel 中我们使用的测试框架是...PHPUnit,Go-Micro 中我们使用的测试框架是 GoConvey,而在 Vue 框架中,我们将使用 Vue 生态的 Vue 测试套件并引入 Mocha 测试框架进行 BDD 风格的单元测试。...你可以参照Vue 官方文档通过 NPM 安装相应的依赖包,不过这里为了方便后端程序员快速入门,我们绕过 Webpack 的繁琐配置,直接基于 Laravel Mix 引入 Vue 测试套件和 Mocha...编写测试用例 在 tests/JavaScript 目录下新建一个 example.spec.js 测试文件,编写一段简单的 BDD 风格测试代码如下: import { mount} from "@vue...当然,这只是一个最基本的测试用例,还不是标准的 BDD 风格测试代码(Given-When-Then),下篇教程,学院君将给大家演示如何遵循 BDD 风格基于 TDD 模式从头开始开发一个 Vue 单文件组件
在 public 目录下新建 js 子目录用于存放编译打包后的 JavaScript 脚本文件。...js 文件变成最终可以引入到 HTML 文档的文件,还需要在 blog 根目录下新建 webpack.mix.js,通过 Laravel Mix 来编译打包这些预处理 js 文件: const mix...= require('laravel-mix') mix.js('resources/js/app.js', 'public/js'); 上述代码的含义是引入 Laravel Mix,然后通过它提供的...然后在 webpack.mix.js 中补充对应的处理逻辑: const mix = require('laravel-mix') mix.js('resources/js/app.js', 'public...5、编译前端资源文件 完成以上编码后就可以在项目根目录下执行 npm run dev 编译打包前端资源了: ? 编译成功后,就可以在 public 目录下看到对应的新文件了: ?
安装依赖: 【win】npm install echarts vue-echarts 【mac】sudo npm install echarts vue-echarts Vue-ECharts 默认在...webpack 环境下会引入未编译的源码版本,Vue CLI 创建项目可能会遇到默认配置把 node_modules 中的文件排除在 Babel 转译范围以外的问题。...修复方法是在vue.config.js中添加如下代码: 1 // For Vue CLI 3+, add vue-echarts and resize-detector into transpileDependencies...5 ] 引入: import ECharts from 'vue-echarts' 各零件按需加载,手动引入 ECharts 各模块来减小打包体积: import "echarts/lib/chart...注册: Vue.component('myEchart', ECharts) 使用组件: vue-echarts
然后在 resources\views\welcome.blade.php文件 ,将其修改为下面的代码 将原来的HTML删了,添加一个id为app的div,在其中使用app.js 中注册的组件,需要注意的就是要添加...crsf-Token的验证meta标签,和引入 app.js 文件,这个js文件也可以去根目录中的 webpack.mix.js 文集中修改。...Vue-router 的使用 这里扩展Vue-router的使用,首先,我们要安装vue-router组件 npm install vue-router --save 然后我们在 resources...App.vue, 然后等待编译完成即可。...到这里,我们的路由配置就完成了,如果需要添加更多的路由,可以在router.js 中添加一条路由,然后路径指向相应的组件就ok了。
在Node.js中越来越多的库逐渐从从CommonJS转移到ES模块 注:这里是指“真”ES 模块并不是指代码中 Node.js 中使用 import 写法但是实际被 tsc 转成 commonJS...不过这个问题在最近也已经解决 结论 在ES模块中,现在可以使用以下方式而不是使用__dirname或__filename import.meta.dirname // 当前模块的目录名 (__dirname...旧的 ES 模块方式 __dirname和__filename在ES模块中不可用。...然而JavaScript最初是作为在Web浏览器中运行的语言而诞生的。...URL 而不是字符串 大多数的代码可能都是需要使用路径字符串来在Node.js中执行常见的文件操作。
-2/scss/sb-admin-2"; 通过 Laravel Mix 编译前端资源 做好以上准备工作后,就可以在 webpack.mix.js 中将上述资源文件编译打包为对应的 JavaScript...和 Css 代码了: const mix = require('laravel-mix') // 编译前台资源 ... // 编译后台资源 mix.js('resources/js/admin.js...datatables.net-bs4/css/dataTables.bootstrap4.css', 'public/css/table.css'); 运行 npm run dev 之后,我们就可以在视图模板中引入对应的前端资源文件了...Github 仓库中获取:https://github.com/nonfu/master-laravel-code/blob/v1.1/practice/blog/resources/views/admin...@index'); 对应的请求处理逻辑位于后台控制器 Admim\DashboardController 的 index 方法中,如果没有创建这个控制器,现在创建它(在 app/http/controller
CGAL的编译以及在VS中的使用 在被CGAL长久的折磨了两三周 在学习过程中有好几次库都出现了问题 所以打算重新更换一下版本 CGAL可以说是学习这么久以来见过最离谱(ex)的环境配置,期间出了好几次问题...Boost进行编译(这部最好做完整) cmd+r 进入命令行 cd到boost的文件夹内 在该目录下运行bootstrap.bat 运行后会产生不b2.exe等文件 Boost非常大 建议只编译CGAL...sln文件(位置:D:\local\CGAL-4.13.2\examples\Triangulation_2\build) 将draw_triangulation_2设置为启动项 点击运行 在VS中使用...\include\CGAL(编译生成CGAL的include目录) 在VC++目录的的库目录中添加: D:\compile\cgal\build\lib(编译生成CGAL的库目录) D:\compile...\cgal\auxiliary\gmp\lib(gmp的库目录) D:\local\boost_1_71_0\libs(boost的库目录) 在链接器的输入中添加: libgmp-10.lib libmpfr
安装依赖 首先当然是安装依赖 yarn add -D @symfony/webpack-encore 需要注意的是,webpack-encore 没有像 laravel-mix 那样在自己内部依赖 vue-tempplate-compiler...自带了一个 mix() 函数用于引用 mix 编译的资源,与之类似,syfony 也有这样的函数,而且更为方便。...encore_entry_link_tags 和 encore_entry_script_tags 引用编译的前端资源 在模板里使用前面添加的 helper 函数引用资源,你会发现它比 Laravel...(scripts) 因为 laravel 项目默认 package.json 中 develop 等相关的脚本都是使用 laravel-mix 的,为了方便日常开发,现在要对它们进行一些调整,改用 webpack-cocore...当然,更为重要的是,mix4 里因为一些 bug 而无法使用的功能,在 encore 里却正常,如 dynamic import。
laravel/laravel blog --prefer-dist 效果和上面使用安装器安装的一样,使用这个方式安装的一个好处是可以安装旧版本的 Laravel 项目,比如要安装 5.6 版本的项目...Vue 模板、Sass、JS 源文件 routes:项目的所有路由文件都定义在这里 storage:用于存放缓存、日志、上传文件、已经编译过的视图模板等 tests:存放单元测试及功能测试代码 vendor...:Composer 配置文件 webpack.mix.js:Laravel Mix Webpack 配置文件,用于编译和打包前端资源 package.json:配置前端资源依赖和脚本(类似于 composer.json...:类似于 composer.lock 之于 Composer,指定 NPM 包版本 .editorconfig:用于在不同 IDE 或编辑器中维护代码风格的一致性 3、配置 Laravel 应用的一些核心配置...如上例所示,所有的因环境而异的变量配置值(尤其是敏感信息)都应该存放到根目录下的 .env 环境变量文件中: SPARKPOST_SECRET = xyj_laravelacademy.org 然后在配置文件中通过
Laravel 中默认使用的时间处理类就是 Carbon。...2 使用 你需要通过命名空间导入 Carbon 来使用,而不需每次都提供完整的名称。 use Carbon\Carbon; 2.1 获取当前时间 可以同now() 方法获取当前的日期和时间。...如果你不指定参数,它会使用 PHP 配置中的时区: <?php echo Carbon::now(); //2016-10-14 20:21:20 ?...Carbon中你可以使用下面的方法来比较日期: min –返回最小日期。...1小时距现在 5月距现在 当比较的值超过另一个值 1小时前 5月前 当比较的值在另一个值之后 1小时后 5月后 你可以把第二个参数设置为 true 来删除“前”、“距现在”等修饰语:
引言 到目前为止,我们还是使用很原始的方式引入前端资源文件 —— 在特定目录下存放完整的 CSS、JavaScript 文件,然后在 HTML 文档中静态引入。...,以及 Less、Sass 等预处理语言编写模块化样式代码,然后通过 WebPack 对其这些前端资源进行编译、打包、压缩、分发,变成最终可用的静态资源文件。...虽然该项目是针对 Laravel 框架开发的,不过,由于是一个纯前端项目,因此可以适用于所有 Web 前端项目,现在,我们就来在博客项目中引入 Laravel Mix 管理前端资源。...Mac 系统默认已经安装,只是版本较低,Windows 系统如果使用 Laragon 作为集成开发环境,也默认安装了 NPM,通过 Cmder 中即可使用。...这样一来,我们就可以在项目中基于 Laravel Mix 管理前端资源了。 下篇教程,我们将基于 Laravel Mix 为博客项目替换主题。 (全文完)
领取专属 10元无门槛券
手把手带您无忧上云