angular / angular/angular-cli

Angular schematics generates blank lines through template

Offen
#27,896 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
area: @angular-devkit/schematics freq1: low severity2: inconvenient type: bug/fix workaround2: non-obvious
Vorherrschende Sprache
TypeScript
Sterne
27k
Forks
11.8k
Ø Merge
14 Std. 23 Min.
Gemergte PRs (30 T.)
162

Beschreibung

### Command

generate

### Is this a regression?

- [ ] Yes, this behavior used to work in the previous version

### The previous version in which this bug was not present was

_No response_

### Description

I have ng schematics template `__name@dasherize__.component.html` with content :

> <% for (let row of getComponents().rows) { %>
>


> <% for (let field of row.fields) { %>
> <% if (field.type === 'InputStrxing') { %>
>
>
>
> <% } %>
> <% } %>
>

> <% } %>

I build it with :

npm run build
schematics .:ui-generator --name=hello

Generated code creates empty lines on place where is put command "<%" in template, see:

>
>
>


>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>

Is there anyway these white spaces can be avoided. If we have to do it manually, it might kill the purpose of this code generator tool

### Minimal Reproduction

Write a schematic template code with inline code <% inline code %>. Then build and generate code using commands

npm run build
schematics .:ui-generator --name=hello

We can see generated code is having while spaces wherever inline code is present.

### Exception or Error

_No response_

### Your Environment

```text
ng analytics disable --global

Global setting: enabled
Local setting: No local workspace configuration file.
Effective status: enabled

_ _ ____ _ ___
/ \ _ __ __ _ _ _| | __ _ _ __ / ___| | |_ _|
/ △ \ | '_ \ / _` | | | | |/ _` | '__| | | | | | |
/ ___ \| | | | (_| | |_| | | (_| | | | |___| |___ | |
/_/ \_\_| |_|\__, |\__,_|_|\__,_|_| \____|_____|___|
|___/

Angular CLI: 16.2.14
Node: 18.19.1
Package Manager: npm 10.2.4
OS: darwin arm64

Angular: undefined
...

Package Version
------------------------------------------------------
@angular-devkit/architect 0.1602.14
@angular-devkit/core 16.2.14
@angular-devkit/schematics 16.2.14
@schematics/angular 16.2.14
typescript 5.1.6
```

### Anything else relevant?

_No response_

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Reproduzieren Sie die Leerzeilen aus der Inline-<% ... %>-schematic-Vorlage mit npm run build und schematics .:ui-generator --name=hello. Beginnen Sie damit nachzuverfolgen, wie Angular CLI-schematics Template-Befehle rendern, und überprüfen Sie anschließend, dass die generierte Ausgabe befehlsbedingten Leerraum auslässt, während der umgebende Inhalt erhalten bleibt.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
angular, typescript
Bereich
cli, tooling
Issue-Typ
Bug
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
45/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.