2016-01-31 22 views
6

Câu hỏiGrunt nguyên cảo không thể tìm thấy lõi góc

tại sao cant biên dịch Grunt nguyên cảo của tôi tìm ra cốt lõi góc?

Tôi đoán nó có liên quan đến đường dẫn để trình biên dịch không thể tìm thấy thư mục libs trong thư mục node_modules.

Lỗi

nguyên cảo/add.component.ts (1,25): Lỗi TS2307: Không thể tìm thấy mô-đun 'angular2/lõi'.

Cài đặt

Gruntfile.js công tác

typescript: { 
    all: { 
     src: ['typescript/**/*.ts'], 
     dest: 'javascript/frontend', 
     options: { 
      target: "es5", 
      module: "system", 
      moduleResolution: "node", 
      emitDecoratorMetadata: true, 
      experimentalDecorators: true, 
      removeComments: false, 
      noImplicitAny: false 
     } 
} 

nguyên cảo/add.component.ts

import {Component} from 'angular2/core'; 

@Component({ 
    selector: 'mytest', 
    template: '<h1>test</h1>' 
}) 
export class AppComponent { } 

node_modules

  • Bao gồm angular2
  • Bao gồm nguyên cảo

filepaths

app -- node_modules 
    -- typescript 
     -- app.component.ts 
    -- Gruntfile.js 
    -- package.json 

Dùng libs/khung/hướng dẫn

+0

Tôi là một n00b Angular2 nhưng hầu hết các ví dụ tôi thấy sử dụng Gulp. Chúng tôi hiện đang xem xét Webpack cho các bản dựng của chúng tôi. –

Trả lời

3

Chỉ cần bây giờ tôi đã có vấn đề chính xác như vậy. Chạy grunt ở chế độ tiết lộ cho thấy nội dung của tệp cấu hình ts được tạo từ cấu hình grunt. Nhìn kỹ hơn, điều này cho thấy tùy chọn moduleResolution không được sử dụng. Tuy nhiên, mặt khác, nó không được mô tả trên trang chính thức của kiểu gõ.

Dù sao, câu chuyện dài ngắn: Tôi đã sử dụng gói grunt-ts thay vào đó và mọi thứ hoạt động tốt! Tôi đã đăng cấu hình của tôi dưới đây thuận tiện cho bạn :-)

module.exports = function(grunt) { 
 

 
    grunt.initConfig({ 
 
    ts: { 
 
     base: { 
 
     src: ['src/**/*.ts'], 
 
     dest: 'dist', 
 
     options: { 
 
      module: 'system', 
 
      moduleResolution: 'node', 
 
      target: 'es5', 
 
      experimentalDecorators: true, 
 
      emitDecoratorMetadata: true, 
 
      noImplicitAny: false 
 
     } 
 
     } 
 
    } 
 
    }); 
 

 
    grunt.loadNpmTasks('grunt-ts'); 
 

 

 
    grunt.registerTask('default', ['ts']); 
 
};

+0

Ty. Sẽ thử ngay hôm nay. – NDY

+0

đã làm công việc, ty :) – NDY

+2

Khi tôi chạy lệnh 'tsc' nó hoạt động tốt nhưng sử dụng cùng một cấu hình như bạn khi tôi chạy grunt tôi nhận được những thứ như thế này: 'app/main.ts (1,1): lỗi TS6053: Không tìm thấy tệp '/Users/jbleach/workspaces/nox/noxApp/WebContent/app/node_modules/angular2/typings/browser.d.ts'. node_modules/angular2/platform/browser.d.ts (77,90): lỗi TS2304: Không thể tìm thấy tên 'Hứa hẹn'. node_modules/angular2/src/common/pipes/async_pipe.d.ts (25,38): lỗi TS2304: Không thể tìm thấy tên 'Hứa hẹn'. node_modules/angular2/src/core/application_ref.d.ts (83,60): lỗi TS2304: Không thể tìm thấy tên 'Promise'.' – Justin

Các vấn đề liên quan