hugo pipes parcel
1.0.0
请注意,此存储库仅涉及演示资产管道,而不被视为完整的启动器。按照您的意愿进行操作,但请记住,这里的所有内容都是为我们的内部工作流程设计的。
我们在所有项目中都使用变更日志。请参阅该文件以获取更新。
require
即可在本地加载操作系统字体)此设置利用 Parcel 进行 Javascript 和开源字体处理,利用 Hugo Pipes + PostCSS 进行 CSS 处理,并使用npm-run-all
并行运行 Parcel 和 Hugo(请参阅下面的注释)。我们使用 Yarn 包管理器,但如果您愿意,也可以使用 NPM。
这个资产管道是我们从使用 Webpack 处理 JS/Fonts/CSS 的转变。 Parcel 是一个类似于 Webpack 的捆绑器,但作为灵活性稍差的代价,它的配置和文件占用空间更小,并且构建速度更快;事实上,Parcel 没有配置文件。使用 Hugo 构建 CSS 的转变允许 Hugo 网站在外部构建过程之外进行开发。这种方法有一些缺点,如下所述。
package.json
中的脚本包括使用cross-env
加载环境变量,这对于某些系统(不是 Windows)是可选的,并且可以安全地删除。只需将cross-env NODE_ENV=development
替换为NODE_ENV=development
assets/output/index.js
。fileExists "./assets/output/index.js
Hugo 从layouts/_head/scripts.html
创建该文件的哈希值。public/output/index.min.[hash].js
。 assets/css/styles.css
和assets/postcss.config.js
。NODE_ENV=development
,PostCSS 将不会通过 PurgeCSS 处理该文件。public/css/styles.min.[hash].css
。assets/postcss.config.js
处理assets/css/styles.css
,利用 Imports、TailwindCSS、Autoprefixer 和 PurgeCSS。NODE_ENV=development
,PostCSS 将不会通过 PurgeCSS 处理该文件。assets/output/index.[hash].css
。 assets/output/index.css
,并将经过哈希处理的字体文件放在同一目录中。fileExists "./assets/output/index.css
Hugo 从layouts/_head/stylesheets.html
创建预取链接。public/output/index.min.[hash].css
和public/output/font-name.[hash].woff[2]
。 assets/index.js
。layouts/_head/stylesheets.html
以使用Hugo(请参阅该文件中的注释)。