css解析工具 postcss ---2021/04/03

今天介绍一个好的css解析工具 postcss

 

项目打包的过程中,有时候我们需要对CSS解析,然后处理特定的CSS,生成最终文件,今天就举个小栗子,展示如何用postcss实现枚举icon,并生成json文件

 

'use strict';

var postcss = require('postcss');
var fs = require('fs');
var path = require('path');
var fontFile = fs.readFileSync(path.resolve(__dirname, '../../packages/theme-chalk/src/icon.scss'), 'utf8');
var nodes = postcss.parse(fontFile).nodes;
var classList = [];

nodes.forEach((node) => {
  var selector = node.selector || '';
  var reg = new RegExp(/\.el-icon-([^:]+):before/);
  var arr = selector.match(reg);

  if (arr && arr[1]) {
    classList.push(arr[1]);
  }
});

classList.reverse(); // 希望按 css 文件顺序倒序排列

fs.writeFile(path.resolve(__dirname, '../../examples/icon.json'), JSON.stringify(classList), () => {});

完结!

上一篇:如何在vue-cli中使用postcss-px-to-viewport(px自动转为vw)


下一篇:postcss 运用及原理