2017-09-17 17 views
11

Tôi muốn thêm một thành phần mới trong lõi asp.net 2.0 SPAs với góc 4 với cli góc với phiên bản này:tôi không thể thêm thành phần mới với cli góc trong spa lõi asp.net

@angular/cli: 1.4.2

node: 8.4.0

os: Linux x64

khi tôi chạy lệnh này ng g c vehicle-form vào một thư mục của các thành phần có lỗi này:

Error: Could not find an NgModule for the new component. Use the skip-import option to skip importing components in NgModule. Could not find an NgModule for the new component. Use the skip-import option to skip importing components in NgModule.

app.module.shared.ts

Ngoài ra, tôi có 3 file cho app.module.ts không phải là một: \:

app.module.browser.ts

app.module.shared.ts

app.module.server.ts

+0

[kiễu góc CLI trong ASP.NET Core 2 Step By Step] (https: //stackoverflow.com/a/48972840/7487135) –

Trả lời

19

Bạn đang sử dụng CLI góc trong một dự án đó không phải là được xây dựng với CLI trong tâm trí, vì vậy bạn phải thực hiện thêm một vài bước. Thông báo lỗi cho bạn biết muốn làm.

Trước tiên, chạy lệnh ng g c vehicle-form và bao gồm tùy chọn --skip-import=true.

Sau đó, thêm khai báo thành phần vào tệp mô-đun ứng dụng thích hợp bằng tay. Trong trường hợp này, app.module.shared.ts, nơi tất cả các thành phần ứng dụng khác được khai báo.

Hoặc, bạn có thể chạy ng g c vehicle-form và bao gồm --module='app.module.shared.ts'. Bạn có thể phải hoàn toàn đủ điều kiện đường dẫn đến tệp mô-đun với điều này. Tôi đã không thử nghiệm nó, vì vậy hãy chuẩn bị để thử một vài thứ với điều này một mình.

Thông tin thêm về ng tạo thành phần: generate component.

CẬP NHẬT (2018-03-01)

Microsoft đã cung cấp một số mẫu SPA mới để sử dụng với các ứng dụng ASP.NET Lõi 2.0. Bạn có thể tìm thêm thông tin chi tiết về chúng here. Angular template mới bao gồm hỗ trợ cho số Angular CLI. Vì vậy, nếu bạn đã quen thuộc với CLI, sau đó điều này sẽ cảm thấy một chút giống như nhà. Điều này có nghĩa là bạn có thể thực hiện các lệnh ng g để tạo mã bằng mẫu mới này.

+1

Cảm ơn! Xác nhận rằng thao tác này hoạt động: ng g c dạng xe --module = 'app.module.shared.ts'. Để cài đặt CLI góc và nhận tệp .angular-cli.json trong thư mục gốc của dự án, tôi làm theo các hướng dẫn sau: https://stackoverflow.com/questions/46826352/angular-cli-in-asp-net-core -2-góc-mẫu –

5

Trong trường hợp dự án Góc lõi ASP Net, app.module được chia thành 3 tệp như bạn đã đánh dấu. CLI góc phải quyết định nơi để thêm tham chiếu đến thành phần trong mô-đun, vì vậy bạn cần cung cấp cho nó một số trợ giúp.

ng gc modulename --module = 'app.module.browser.ts'

2

trong .angular-cli.json trong phần "Ứng dụng" thay thế "./src" thành "src"

"apps": [ { "root": "src", "outDir": "dist",

0

ng tạo ra thành phần componentName --module = app.module

Trong dự án của tôi tôi cũng đã nhận lỗi trên tôi đã cố gắng lệnh này làm việc này đúng cách.Tôi nghĩ rằng điều này sẽ giúp bạn.

0

Tôi gặp vấn đề tương tự và sau đó tôi nhận ra rằng mình không ở trong thư mục gốc của dự án.

tôi đã không làm việc khi

/c/some/path/your_project/src/bla/bla/bla 

Nhưng nó không làm việc (đối với tôi nó làm việc)

/c/some/path/your_project 
Các vấn đề liên quan