39 lines
1.5 KiB
Markdown
39 lines
1.5 KiB
Markdown
# Function: generateFiles
|
|
|
|
▸ **generateFiles**(`tree`, `srcFolder`, `target`, `substitutions`): `void`
|
|
|
|
Generates a folder of files based on provided templates.
|
|
|
|
While doing so it performs two substitutions:
|
|
|
|
- Substitutes segments of file names surrounded by \_\_
|
|
- Uses ejs to substitute values in templates
|
|
|
|
Examples:
|
|
|
|
```typescript
|
|
generateFiles(tree, path.join(__dirname, 'files'), './tools/scripts', {
|
|
tmpl: '',
|
|
name: 'myscript',
|
|
});
|
|
```
|
|
|
|
This command will take all the files from the `files` directory next to the place where the command is invoked from.
|
|
It will replace all `__tmpl__` with '' and all `__name__` with 'myscript' in the file names, and will replace all
|
|
`<%= name %>` with `myscript` in the files themselves.
|
|
`tmpl: ''` is a common pattern. With it you can name files like this: `index.ts__tmpl__`, so your editor
|
|
doesn't get confused about incorrect TypeScript files.
|
|
|
|
#### Parameters
|
|
|
|
| Name | Type | Description |
|
|
| :-------------- | :------------------------------------ | :-------------------------------------------- |
|
|
| `tree` | [`Tree`](../../devkit/documents/Tree) | the file system tree |
|
|
| `srcFolder` | `string` | the source folder of files (absolute path) |
|
|
| `target` | `string` | the target folder (relative to the tree root) |
|
|
| `substitutions` | `Object` | an object of key-value pairs |
|
|
|
|
#### Returns
|
|
|
|
`void`
|