bluebirdday / frontools
Magento 2 前端工具集,基于 Gulp.js 构建
dev-master
2024-01-22 12:44 UTC
This package is auto-updated.
Last update: 2024-09-22 14:35:20 UTC
README
注意 这是一个 SnowdogApps/magento2-frontools 的分支,这个分支只会包含更新,我们不会添加任何新功能!
这个分支仅用于支持 NodeJS 的新版本
Magento 2 Frontools
Magento 2 前端工具集
要求
- 类 Unix 操作系统(请不要询问 Windows 支持)
- Node.js LTS 版本。我们建议使用 nvm-sh。
- 具有基于 SASS 主题的 Magento 2 项目,例如 "Blank" 的 SASS 版本
安装
- 运行
composer require bluebirdday/frontools - 转到包目录
cd vendor/bluebirdday/frontools - 运行
npm install或yarn - 决定您想保留配置文件的位置。您可以将它们存储在 Frontools
config目录中,或者在dev/tools/frontools/config(推荐)。有一个setup任务,可以从config复制所有示例配置文件到dev/tools/frontools/config并在项目根目录中创建便利的符号链接tools。如果您想将配置文件保留在 frontoolsconfig目录中,您必须手动处理。 - 在
themes.json中定义您的主题。
themes.json 结构
检查 config/themes.json.sample 获取示例。
src- 主题的完整路径dest-pub/static/[theme_area]/[theme_vendor]/[theme_name]的完整路径locale- 可用区域设置的数组parent- 父主题的名称stylesDir- (默认styles) 样式目录的路径。对于theme-blank-sass,它是styles。默认情况下,Magento 2 使用web/css。disableSuffix- 使用--prod标志禁用添加.min后缀。postcss- (默认["autoprefixer({ overrideBrowserslist: browserslist })"]) PostCSS 插件配置。必须是数组。modules- 您想要映射到主题中的模块列表ignore- 忽略模式数组
watcher.json 结构
检查 config/watcher.json.sample 获取示例。
usePolling- 将此设置为true以成功监视网络上的文件(例如,Docker 或 Vagrant)或当您的监视程序表现不佳时。警告:启用此选项可能导致 CPU 利用率过高! chokidar 文档
由于 Dart Sass 没有与 Node Sass 相同的功能集,因此目前我们将保留旧版本作为默认版本。
第三方插件的可选配置
您将在 vendor/snowdog/frontools/config 目录中找到这些插件的示例配置文件。
- 创建 browserSync 配置
- 创建 eslint 配置
- 创建 sass-lint 配置
- 创建 stylelint 配置
- 创建 svg-sprite 配置
任务列表
使用 yarn [任务名] 或 npm run [任务名] 来运行任务。
babel- 运行 Babel,下一代 JavaScript 的编译器。--theme name- 处理单个主题。--prod- 生产输出 - 压缩并美化代码。
clean- 删除/pub/static目录内容。csslint- 运行基于 stylelint 的测试。--theme name- 处理单个主题。--ci- 启用抛出错误。在 CI/CD 管道中很有用。
dev- 运行 browserSync 和inheritance、babel、styles、watch任务。--theme name- 处理单个主题。--disableLinting- 禁用 JS、SASS、CSS 检查。--disableMaps- 禁用内联源映射生成。
emailfix- 为 Magento < 2.3.0 修复电子邮件样式表。相关问题--prod- 生产输出 - 压缩样式并添加.min后缀。
eslint- 对所有 JS 文件运行 eslint。--theme name- 处理单个主题。--fix- 自动修复错误--ci- 启用抛出错误。在 CI/CD 管道中很有用。
inheritance- 创建必要的符号链接以解决主题样式继承问题,并作为样式处理的基线。您必须在样式编译之前和添加新文件之后运行。magepackBundle- 运行 magepack 的bundle命令。-c或--config- (必需) 之前生成的 Magepack 配置文件的路径。--theme name- 处理单个主题。
magepackGenerate- 运行 magepack 的generate命令。--cms-url- (必需) 一个 CMS 页面(例如主页)的 URL。--category-url- (必需) 一个类别页面的 URL。--product-url- (必需) 一个产品页面的 URL。-u或--auth-username- 基本认证的用户名。-p或--auth-password- 基本认证的密码。-d或--debug- 启用调试模式。
sasslint- 运行基于 sass-lint 的测试。--theme name- 处理单个主题。--ci- 启用抛出错误。在 CI/CD 管道中很有用。
setup- 从/tools创建到/vendor/snowdog/frontools的便捷符号链接,并在没有配置的情况下复制所有示例文件。--symlink name- 如果您不想使用tools作为符号链接,可以指定另一个名称。
styles- 使用此任务手动触发样式处理流程。--theme name- 处理单个主题。--disableMaps- 禁用内联源映射生成。--prod- 生产输出 - 压缩样式并添加.min后缀。--ci- 启用抛出错误。在 CI/CD 管道中很有用。
svg- 运行 svg-sprite 以生成 SVG 图标。--theme name- 处理单个主题。
watch- 监视样式更改并运行处理任务。--theme name- 处理单个主题。--disableLinting- 禁用 JS、SASS、CSS 检查。--disableMaps- 禁用内联源映射生成。