https://github.com/wxmlfile/wxml-generator
A wxml code generator from AST parsed by @wxml/parser
https://github.com/wxmlfile/wxml-generator
wechat-miniprogram wxml
Last synced: about 1 month ago
JSON representation
A wxml code generator from AST parsed by @wxml/parser
- Host: GitHub
- URL: https://github.com/wxmlfile/wxml-generator
- Owner: wxmlfile
- Created: 2022-11-24T17:42:14.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-02-18T11:52:07.000Z (about 2 years ago)
- Last Synced: 2025-02-19T23:18:06.679Z (2 months ago)
- Topics: wechat-miniprogram, wxml
- Language: TypeScript
- Homepage:
- Size: 17.6 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
## @wxml/generator
[](https://www.npmjs.com/package/@wxml/generator)
A wxml code generator from AST parsed by @wxml/parser.
`traverse` has Updated to [wxml-traverse](https://github.com/wxmlfile/wxml-traverse)## Basic Usage
```javascript
const { parse } = require("@wxml/parser");
const AST = parse(`
{{mallName}}
`);
const { generate } = require("@wxml/generator");
// const { traverseStatic } = require("@wxml/generator");
// traverseStatic(AST, {
// WXInterpolation(node) {
// if (node.value === 'mallName') {
// node.value = 'somethingNew';
// }
// }
// });
const { traverse } = require('@wxml/traverse');
traverse(AST, {
WXInterpolation(path) {
if (path.node.value === 'mallName') {
path.node.value = 'somethingNew';
}
}
});
const code = generate(AST);
console.log("AST structure: ", AST);
console.log("Code: ", code);
```## ่ดก็ฎ่