每次都是将一个一个文件夹打开,将其中的文件全部删除,但要保留文件夹,以便于后面再陆续存放新的文件。 手动操作起来每繁琐,特别是当文件夹及其子文件夹很多且里面的文件也较多时。...下面的程序会删除指定文件夹中的所有文件,包括其子文件夹中的文件,但会保留文件夹,即保留文件夹框架,以便再往里面存放新文件。...' 如果递归调用则同时返回子文件夹中的所有文件....Set fdrFolder = fsoSysObj.GetFolder(strPath) If Err 0 Then ' 不正确的路径....Exit Sub End Sub ' 测试代码: Sub test() KillFiles "C:\Users\excelperfect\Desktop\1", True End Sub 可以将其中的文件夹路径更换为实际文件夹路径
我的目标是在windows系统中删除目录中所有文件路径中的所有单引号。 ...它删除包含撇号的整个文件。...也无法删除订单并替换“'” def remove_non_ascii_1(text): return ''.join(i for i in text if ord(i) == 39) [os.rename...但当路径中有多个撇号时(即crazy'yeah'yeah.doc),以下方法不起作用 ) def remove_apstrophes(text): return re.sub(r"(^.*)(')
删除git的.idea文件 git rm --cached -r .idea # 如果没有git忽略文件的话,操作: ①配置.gitignore文件(新建/编辑) echo '.idea' >> .gitignore
如果你对外开源的代码中出现了敏感信息(例如你将私钥上传到了仓库中),你可能需要考虑将这个文件从 git 的历史记录中完全删除掉。 本文介绍如何从 git 的历史记录中彻底删除文件或文件夹。...---- 第一步:修改本地历史记录 彻底删除文件: 1 git filter-branch --force --index-filter 'git rm --cached --ignore-unmatch...彻底删除文件夹: 1 git filter-branch --force --index-filter 'git rm --cached -r --ignore-unmatch WalterlvDemoFolder...' --prune-empty --tag-name-filter cat -- --all 删除文件夹时需要额外带一个 -r 选项,并指定文件夹名称,这里的例子是 WalterlvDemoFolder...第二步:强制推送到远端仓库 刚刚我们的操作仅仅发生在本地仓库,敏感信息需要删除的仓库通常都在远端,于是我们一定要将修改推送到远端仓库。
(); <-- 启用打版本号,需要在html中修改 // mix.disableNotifications(); // mix.setPublicPath('path/to/public'); // mix.setResourceRoot...// purifyCss: false, <-- 删除未使用的CSS选择器。...# 图片或者其他媒体资源 | |__resorces/ | |__scripts/ # 源JS文件 | |__styles/ # 源Sass文件爱你 | |__src/ # 我们希望将文件夹...“按原样”复制到公共目录中的文件夹。...| package.json webpack.mix.js 接下来写一个简单的 Laravel Mix 配置文件, webpack.mix.js let mix = require('laravel-mix
Laravel的宗旨是让PHP开发变得轻松愉悦,所以从Laravel 5开始,提供了一个新的被称作LaravelElixir的API。...在本节中,我们会展示如何创建并执行与Laravel应用紧密结合的Elixir任务,但在这之前,可能很多人还不太了解什么是Gulp,所以我们将从这里开始,逐一为你解开Elixir的面纱。...不管你使用的是什么操作系统,都可以从 Node.js官网 下载与之对应的安装包。如果你想从源代码编译安装,也可以通过这个链接去下载源码。...你可以使用如下命令本地安装这两个包: $ npm install 安装完成之后,你会看到项目根目录下新增了一个 node_modules 文件夹,在该文件夹内包含了我们刚刚安装的 gulp 和 laravel-elixir...在该文件中,可以看到一个Gulp任务示例: elixir(function(mix) { mix.less('app.less');}); mix.less 任务可以用于编译Less文件,在本例中该文件名为
第一部分:重要新特性介绍 下面,我们一起来看下几个重要的新特性: Laravel Mix 测试辅助函数 在新版本中,可以通过 withoutMix() 和 withMix() 测试辅助函数启用或禁用异常处理...支持 PHPUnit 9 从 v6.10 开始,Laravel 开始支持 PHPUnit 9,可以通过完整的 pull request 查看实现细节:https://github.com/laravel...Redis 连接类支持定义宏方法 和 Laravel 框架中其他支持 macro 方法的类一样,现在可以在 Redis Connection 上调用 macro 定义宏方法: use Illuminate...Illuminate\Console\Command 中分离出 CallsCommands 功能 允许在 Storage::putFile() 中使用绝对文件路径 功能调整 处理传递过多参数到 @slot...Markdown 中使用 league/commonmark 扩展包取代 erusev/parsedown 在退出时重新生成令牌 让 RedisQueue::getConnection() 方法可以公开访问 删除对
": "^1.1.6", "laravel-elixir-vue-2": "^0.3.0", "laravel-elixir-webpack-official": "^1.0.10", "laravel-mix...'); require('laravel-elixir-webpack-official'); require('laravel-elixir-vue-2') elixir((mix) => { mix.sass...('app.scss') .webpack('app.js'); }); webpack.mix.js let mix = require('laravel-mix'); mix.js('...使用postcss-px-to-viewport 在webpack.mix.js中添加 mix.js('resources/assets/js/app.js', 'public/js') .postCss...中 mix.webpackConfig({ plugins: [ new BundleAnalyzerPlugin(), ], }).js('resources/assets/js/app.js
在此教程中,我们将学习如何构建并运行一个以 Vue 路由为前端,laravel 为后端的 SPA 应用。...$route 来调用 VueRouter 构造器包含一个路由数组,在这个数组中定义路由的路径,名称(类似于 Laravel 的命名路由)和这个路径对应的页面组件。...为了让 Laravel mix 成功运行,我们需要定义如下三个组件: mkdir resources/assets/js/views touch resources/assets/js/views/App.vue... 我倾向于把复用组件从页面组件中分离出来,做法是把页面组件放在 resources/assets/js/views 文件夹下,把复用组件放在 resources/assets.../js/components 文件夹下。
/node_modules/laravel-mix/src/index和 ..../node_modules/laravel-mix/src/builder/WebpackConfig 附加代码: /** * As our first step, we'll pull in the.../node_modules/laravel-mix/src/index'); // 修改路径 require(Mix.paths.mix()); /** * Just in case the user.../node_modules/laravel-mix/src/builder/WebpackConfig'); //修改路径 module.exports = new WebpackConfig()....到这里,我们的路由配置就完成了,如果需要添加更多的路由,可以在router.js 中添加一条路由,然后路径指向相应的组件就ok了。
,通过 Laravel Mix 来编译打包这些预处理 js 文件: const mix = require('laravel-mix') mix.js('resources/js/app.js', '...public/js'); 上述代码的含义是引入 Laravel Mix,然后通过它提供的 js 方法将 resources/js/app.js 进行编译打包,然后将处理后的 app.js 文件分发到...然后在 webpack.mix.js 中补充对应的处理逻辑: const mix = require('laravel-mix') mix.js('resources/js/app.js', 'public...将 node_modules/@fortawesome/fontawesome-free/webfonts 文件夹拷贝到 public 目录下。...> 关于专辑页和文章页,可以参考 Github 仓库中的代码,这里就不一一列举了: 专辑页:https://github.com/nonfu/master-laravel-code
因为近几年来大部分时假在与 Laravel 打交道,使用 laravel-mix 已成家常便饭,所以想着总结并分享一下 laravel-mix 工作流中的自动刷新之道。...在 webpack.mix.js 中根据实际场景配置 hmr 参数 // 配置 hmr 参数 mix.options({ hmrOptions: { host: 'laravel-mix-autoreload-demo.test...打开页面,修改页面引用的前端资源(如 js,css)并保存,页面将自动刷新 因为使用 laravel-mix 编译,一般修改 resource/ 目录下的文件,但实际上直接修改 public/ 目录中的文件也是可以触发刷新的...但同时需要注意的是 laravel-mix 环境下使用 hmr 也存在一些问题(当前最新版本 4.0.15 中仍存在),例如与 mix.extract() 没法同时使用( 见 Issue ) 以及在windows...环境中存在的路径分隔符问题 见 Issue ,好在这几个 Issue 里也给出了这些问题的解决办法,虽然不甚优雅,但至少行得通。
对于 Bootstrap 所需 CSS 文件,会在 resources/sass/app.scss 中引入: @import '~bootstrap/scss/bootstrap'; 从 Laravel...Laravel Mix 是对 Webpack 进行封装后提供给 Laravel 项目使用的前端打包工具,Webpack 是目前最新的、广泛使用的前端资源打包工具(之前还有 Grunt、Gulp 等),能够以模块方式处理所有前端资源...后面我们会专门讲一下 Laravel Mix 的各种使用,现在你只需要知道它是怎么回事就好了。...Laravel Mix 的配置文件就是项目根目录下的 webpack.mix.js: const mix = require('laravel-mix'); mix.js('resources/js/...app.js', 'public/js') .sass('resources/sass/app.scss', 'public/css'); 目前,它非常之简洁,从 node_modules 中引入
我在前几天刚写过的《让 F5 歇一会儿——laravel-mix 自动刷新之道》[1]中介绍了 laravel-mix 实现自动刷新的几种方法,其中就有涉及 hmr(Hot Module Replacement...首先假定你已经创建了一个 laravel 项目,进行了相关配置(.env 配置及绑定测试域名,如:laravel.test)并已装好了后端依赖 玩法一:使用虚拟机中的 Node 环境 因为 Homestead...1.vagrant ssh 连接虚拟机,进入项目目录后安装前端依赖 yarn install 2.在 webpack.mix.js 中调整相关配置 使用 mix.Webpack() 配置 devServer...在虚拟机终端中执行yarn run hot,然后在浏览器中使用绑定的测试域名(如:laravel.test)访问 34.修改 JS 等,自动编译后浏览器中页面即自动更新 玩法二:使用宿主机中的 Node...1.从宿主机终端进入项目目录并安装前端依赖 yarn install 2.webpack.mix.js 中使用 webpackConfig 进行配置 mix.webpackConfig({ devServer
1、下载 SB Admin 2 主题 完全前端基本功能之后,接下来,我们来构建这个 PHP 博客项目后台管理系统,主要包含登录认证,仪表盘页面,专辑、文章的创建、修改和删除,以及消息后台查看等功能。...文章列表页 这里我们引入了基于 Bootstrap 框架的 SB Admin 2 作为后台管理系统的主题,你可以从 Start Bootstrap 网站 预览并下载这个主题,或者通过 NPM 来下载安装...Mix 编译前端资源 做好以上准备工作后,就可以在 webpack.mix.js 中将上述资源文件编译打包为对应的 JavaScript 和 Css 代码了: const mix = require(...'laravel-mix') // 编译前台资源 ... // 编译后台资源 mix.js('resources/js/admin.js', 'public/js/admin.js') .js...Admin 2 仪表盘视图 HTML 代码(位于 node_modules/startbootstrap-sb-admin-2/index.html),然后将其中的前端资源文件调整为本博客项目的资源文件路径
对于如何创建一个Laravel项目,相信对新接触Laravel的朋友并不存在太多的问题,但是今天我们要来看一下如何将已有的Laravel项目迁移(复制)到新的开发环境。...假设我们已经创建好了一个项目,项目地址为/home/eagle/webdev/example, 我们先来讲解一下整体步骤: 在项目文件夹中初始化Git并将所有项目文件添加至working tree。...来拷贝我们的项目了: $ git clone /home/eagle/webdev/example /home/eagle/webdev/new_location 完成后,我们的项目就顺利被迁移至了新的文件夹中...可能你已经注意到,我们新建Laravel项目的时候,.env文件将自动被创建在项目根目录下。但是这个文件是用于不同环境下项目配置的,所以在git clone时这个文件同样不会被拷贝至新路径。...好了,这样一来我们后端的配置就完成了,如果你用了Laravel Mix来编译前端文件,那么你还需要 $ npm install 注意:Windows环境下请运行npm install –save-dev
传统 MVC 项目直接升级到前后端分离需要大量的时间与人力,在业务多变的阶段并不适合,所以便有了本文的过渡方案探索 路由先不分离,仍然采用 PHP 提供的路由 模板部分分离,在原 PHP 模板中,引入...Mix 工具,这会节省大量前端配置时间 根目录新建文件 webpack.mix.js const fs = require('fs'); const mix = require('laravel-mix...# 流程 按照示例配置一个页面 Yarn 安装前端依赖 Yarn 前端编译,此时,PHP 模板中已正确引入 Vue 访问路由,PHP 渲染模板,返回给浏览器 浏览器加载 Vue,交由 Vue 渲染页面...9 10 11 # laravel-mix 配置 const path = require('path') const mix = require('laravel-mix') const rs_root.../resources/js 文件夹可以删掉了,编译后的总文件大小约 2.5 M 至此,优化完成,完美解决了开发流程的痛点 # 后记 目前仍在不断地探索中
看过我之前写过的博客的应该知道我一直是 laravel-mix 的死忠粉,有好几篇文章都是关于它的。每每提到 laravel-mix 时更是不吝溢美之词。...正所谓爱之深,责之切,在对 laravel-mix 表示失望之后,我翻出了自己 star 多时的另一包 webpack-encore,虽说很早就 star 了,但之前却没试用过它,可能也是因为对于 laravel-mix...webpack-encore 是 Symfony 官方的前端集成构建工具,同样是基于 webpack,但它的 API 设计得更为友好,而且文档更完善,当然更关键的一点是,坑更少啊……从开始读它的文档,倒把手里一个项目从...而我迁移的这个项目,是一个 Laravel 项目,所以下面就分享下,如果在 Laravel 项目中使用 webpack-encore 替代 laravel-mix。...(scripts) 因为 laravel 项目默认 package.json 中 develop 等相关的脚本都是使用 laravel-mix 的,为了方便日常开发,现在要对它们进行一些调整,改用 webpack-cocore
: 把属性选择器不放在css选择器里面是因为jQuery中写法是不一样的.至于css中写法可以参考我之前写的一篇css的选择器一文.jQuery中是和xPath类似的写法: $("mix[@attr]"...=a_value"]):attr属性的属性值中包含a_value 7.伪类选择器 具有限定子节点选择器:$("mix1[mix2]"):返回包含mix2的mix1节点.如:$("div[a]"):包含a...这个和$("div a")不相同.后者表示div中的a标签,返回的是a标签对象,前者返回的是div标签对象 冒号限定结点选择器:$("mix:condition"):mix标签,并且满足限定条件....E:root:类型为E,并且是文档的根元素 E:nth-child(n):是其父元素的第n个类型为E的子元素 ,基数从1开始 E:first-child:是其父元素的第1个类型为E的子元素 E:last-child...E:odd:从匹配的元素集中取序数为奇数的元素 E:parent:选择包含子元素(包含text节点)的所有元素 E:contains('test'):选择所有含有指定文本的元素 表单选择器: E:input
领取专属 10元无门槛券
手把手带您无忧上云