无法使用angular-cli创建Angular 5项目

时间:2018-01-08 10:28:04

标签: angular typescript

我正在尝试创建一个新的Angular 5项目。我安装了@ angular / cli版本1.6.3并输入了:

ng new project --routing

安装好所有东西之后我做了:

cd project
ng build

并出现以下错误:

  

模块构建失败:错误:在TypeScript编译中缺少d:... \ project \ src \ main.ts。请通过“'文件”确保它在您的tsconfig中。或者包括'属性。

     

模块构建失败:错误:在TypeScript编译中缺少d:... \ project \ src \ polyfills.ts。请通过“'文件”确保它在您的tsconfig中。或者包括'属性。

Angular github page上有一些关于此问题的讨论,但除了说这已经解决之外,或指向tsnode_modules个文件所在的问题 - 它没用。

我们在这里使用Windows 10.

编辑:tsconfig文件是(有两个):

{
  "compileOnSave": false,
  "compilerOptions": {
    "outDir": "./dist/out-tsc",
    "sourceMap": true,
    "declaration": false,
    "moduleResolution": "node",
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "target": "es5",
    "typeRoots": [
      "node_modules/@types"
    ],
    "lib": [
      "es2017",
      "dom"
    ]
  }
}

另一个(src / tsconfig.app.json):

{
  "extends": "../tsconfig.json",
  "compilerOptions": {
    "outDir": "../out-tsc/app",
    "baseUrl": "./",
    "module": "es2015",
    "types": []
  },
  "exclude": [
    "test.ts",
    "**/*.spec.ts"
  ]
}

这些都是由ng new创建的。

2 个答案:

答案 0 :(得分:0)

通过在终端/控制台窗口中运行node -v和npm -v,验证您是否至少运行节点6.9.x和npm 3.x.x.较旧的版本会产生错误,但较新的版本会很好。

答案 1 :(得分:0)

亲爱的,我忘了回答这个问题!很久以前,Angular github就回答了这个问题。

在Angular 5中,您需要向void SDKTemplate::Scenario4_ReproVideo::Grabar_Click(Platform::Object^ sender, Windows::UI::Xaml::RoutedEventArgs^ e) { CameraCaptureUI^ dialog = ref new CameraCaptureUI(); dialog->VideoSettings->Format = CameraCaptureUIVideoFormat::Mp4; Windows::Foundation::Collections::IPropertySet^ appSettings = ApplicationData::Current->LocalSettings->Values; concurrency::task<StorageFile^>(dialog->CaptureFileAsync(CameraCaptureUIMode::Video)).then([this](StorageFile^ file) { if (file != nullptr) { concurrency::task<Streams::IRandomAccessStream^> (file->OpenAsync(FileAccessMode::Read)).then([this] (Streams::IRandomAccessStream^ stream){ CapturedVideo->SetSource(stream, "video/mp4"); logger->Text = "recording"; }); Windows::Foundation::Collections::IPropertySet^ appSettings = ApplicationData::Current->LocalSettings->Values; appSettings->Insert("CapturedVideo", PropertyValue::CreateString(file->Path)); } else { logger->Text = "Something went wrong or was cancelled"; } }); } --preserve-symlinks添加ng build

在Angular 6中你不能再这样做,而是需要添加

ng serve

"preserveSymlinks": true, ,您将其置于项目的angular.json下。