Thiết lập được đề xuất để phát triển angularJS trong Visual Studio 2013 [đã đóng]


9

Tôi đang bắt đầu với AngularJS. Phần cuối sẽ là API Web (cũng mới đối với tôi) và tôi chỉ muốn sử dụng một IDE, vì vậy tôi đang cố gắng tìm ra cách thiết lập một dự án trong Visual Studio 2013 cho AngularJS. Tôi muốn giữ nó như một dự án riêng biệt, để giữ cho nó được kết nối lỏng lẻo với API (hoặc giữ cho UI được tách rời khỏi API Web). Tôi đang có một thời gian khó khăn để tìm ra làm thế nào để có được thiết lập này. Vì thế....

  • Loại dự án nào là tốt nhất cho dự án AngularJS (thuần HTML 5) thuần túy?
  • Được đề nghị sử dụng Grunt? Hoặc là MS Build tốt hơn để xử lý các tác vụ xây dựng? Tôi nghĩ ở đây linting, thu nhỏ, nối các tệp vào một tệp phân phối duy nhất, có thể sao chép vào một máy chủ web.
  • Làm thế nào để bạn chạy thử nghiệm? Có một plugin để chạy thử nghiệm Jasmin? Bạn chỉ chạy Karma riêng?
  • Có mẫu nào tốt cho AngularJS không? Bất kỳ sử dụng ngBoilerplate?

Bất kỳ trợ giúp sẽ được đánh giá cao.



6
Tôi có một chút vấn đề với việc này được coi là quá rộng. Tôi hơi lạc lõng với chủ đề này và do đó cực kỳ khó tập trung hơn với câu hỏi của tôi. Vì vậy, tôi thực sự không biết làm thế nào để hỏi một câu hỏi cụ thể hơn vào thời điểm này. Tôi càng google cái này, tôi càng bối rối ... :(
Greg McGuffey

1
Tôi đang tìm kiếm một câu trả lời đơn giản cho cùng một câu hỏi. Có lẽ cách duy nhất là đơn giản hóa hoàn toàn câu hỏi. Tôi sẽ thêm một câu hỏi đơn giản hơn và tham khảo câu hỏi này.
amelvin

2
Tôi không đồng ý với ý kiến ​​cho rằng câu hỏi này quá rộng. Nhận hai lập trình viên trong cùng một phòng và họ sẽ có một câu hỏi tương tự. Trên thực tế, tôi có cùng một câu hỏi chính xác vì chúng tôi sắp bắt đầu một ứng dụng web bằng cách sử dụng cùng một khuôn khổ.
beaudetious

Câu trả lời:


7

Chúng tôi đã có những lựa chọn tương tự để thực hiện.

Chung tôi đa quyêt định :

  • làm cho toàn bộ quá trình xây dựng không phụ thuộc vào studio hình ảnh. Chúng tôi đã chọn sử dụng các công cụ được coi là chủ đạo trong thế giới phát triển góc cạnh. Cách này nhận được sự hỗ trợ của cộng đồng dễ dàng hơn.

  • sử dụng tiện ích mở rộng phòng thu trực quan khi có sẵn để nâng cao trải nghiệm khi có thể

Làm sao :

  • sử dụng gruntkarma. Chúng tôi đã dàn dựng một dự án bằng cách sử dụng yeoman angularvà sử dụng nó làm mẫu để thiết lập quy trình xây dựng của riêng mình. Chúng ta gần như là như vậy.

  • cài đặt tiện ích mở rộng Web Essentials 2013 . Phần mở rộng sử dụng tương tự .jscs.jshintrcbản gruntdựng của bạn sử dụng. Chúng tôi đã quyết định để tiện ích mở rộng Web Essentials 2013 xử lý các .lesstệp khi lưu để index.htmlcó thể tham khảo main.cssvà không yêu cầu quá trình xây dựng.

  • đảm bảo cài đặt trình chỉnh sửa phòng thu trực quan của chúng tôi được căn chỉnh với các quy tắc định dạng .jscs.jshintrcđịnh dạng của chúng tôi (khoảng cách, kết thúc dòng, v.v.).

Cũng thế:

  • chúng tôi chạy karma watch(hoặc grunt watch) trên dòng lệnh cho các thử nghiệm của chúng tôi.

  • gắn liền với việc chạy các bài kiểm tra nghiệp từ visual studio hoạt động tốt, bạn phải chạy thử nghiệm với IE. Nhưng chúng tôi sử dụng các công cụ phát triển Chrome thường xuyên hơn không.

  • chúng tôi không sử dụng người chạy web hoa nhài chút nào. nghiệp chướng có tất cả những gì bạn cần.

  • để làm cho mọi thứ dễ dàng, các tệp ứng dụng của chúng tôi nằm trong / tĩnh / bên trong dự án WebAPI của chúng tôi. Bằng cách này, bạn không cần một máy chủ khác để phục vụ các tệp tĩnh của mình.

  • bạn có thể sử dụng NTVS để gỡ lỗi grunthoặc karmahoặc bất kỳ công cụ nào khác có trong quy trình xây dựng của bạn, từ Visual Studio.

  • tích hợp với CI của chúng tôi (CCNet) rất đơn giản, chỉ cần gọi grunt ciđâu cilà nhiệm vụ thực hiện quá trình xây dựng và sau đó chạy thử nghiệm bằng cách sử dụng các trình báo cáo kiểu Junit thay vì các trình báo cáo kiểu bảng điều khiển.

  • chúng tôi cũng đảm bảo rằng việc chạy quy trình xây dựng là tùy chọn. Quá trình xây dựng gói công cụ trong một distthư mục. Chúng tôi chạy thử nghiệm tích hợp trên thư mục này nhưng tại thời điểm phát triển, chúng tôi chạy trên jscác tệp thô (không được rút gọn hoặc nối). Các yeoman angularmẫu đã cho chúng tôi ở đó dễ dàng.

Tôi hi vọng cái này giúp được


Cảm ơn! Điều này giúp rất nhiều. Một câu hỏi tiếp theo: Tôi giả sử bạn sử dụng MS Build cho phần api web, sau đó chạy grunt cho ui (trong / static / thư mục), phải không?
Greg McGuffey

Một điều tôi vẫn chưa rõ là nên sử dụng loại dự án nào nếu tôi muốn tách giao diện người dùng AngularJS khỏi API Web. Tôi hiểu bạn đặt chúng lại với nhau, tôi chỉ tự hỏi làm thế nào để làm điều đó nếu tôi không muốn chúng cùng nhau, nếu bạn có bất kỳ ý tưởng nào về điều đó.
Greg McGuffey

Để bình luận đầu tiên của bạn: có. Đến lần thứ 2 của bạn: Chúng tôi chỉ đưa chúng vào dự án WebAPI trong môi trường dành cho nhà phát triển của chúng tôi. Tại thời điểm triển khai chúng được triển khai ở nơi khác. Nếu bạn không chọn loại dự án Web thì các tính năng VS dành riêng cho các dự án Web sẽ không hoạt động (ví dụ: Chuyển đến Định nghĩa trong tệp javascript).
Sly

Tùy chọn1: Bạn có thể sử dụng một dự án ASP.Net MVC trống, xóa các phụ thuộc và bạn sẽ ổn. Điều duy nhất là chạy dự án này sẽ biên dịch một /bin/project.dllcái mà không làm gì cả.
Sly

Tùy chọn 2: Tạo dự án Node.js mới trong VS (yêu cầu NTVS), nó có máy chủ web riêng (trong nodejs) sẽ phục vụ các tệp tĩnh của bạn. Tôi đã thử nó và nó hoạt động.
Sly
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.