在 JavaScript 中将 Emmet 字符串解析为 AST



我想使用 Emmet 或等效物将字符串缩写扩展为解析树,我可以在 JavaScript 项目的其余部分使用。

看起来 Emmet 并不是为了作为 NPM 模块使用而设计的,我找不到任何关于如何在 JavaScript 项目中使用它的文档。

我正在寻找等效的东西:

emmet.parse('#main')输出等效于{ type: 'div', attributes: { id: 'main' } } 的东西。

我对 HTML 字符串输出不感兴趣,我需要直接在我自己的项目中使用解析树。

我真的很惊讶这样的东西不存在。 我错过了什么吗? 如何仅将 Emmet 的解析器部分用作库?

我尝试了import并在npm install emmetrequire,但似乎它不是设计为模块并且无法加载。

我花了一段时间才找到它,但最终找到了@emmetio/expand-abbreviation。 看起来它能满足我的需要。

import { expand, parse } from '@emmetio/expand-abbreviation'
const ast = parse('#main>ul>li*3')

最新更新