标签: angular-cli

如何为@ nrwl / nx angular-cli应用生成服务等?

通常,在使用@ angular / cli开发应用程序时,可以通过以下方式添加新服务:

ng generate service foo

这将生成“ FooService”。

我的问题是,当您使用@ nrwl / nx生成库时,如何为它添加服务?

ng generate lib foo-lib

我想知道的是生成服务“ foo”的命令,以便它位于foo-lib库中。

angular-cli nrwl

1
推荐指数
2
解决办法
1256
查看次数

如何为Angular的必须httpclient的响应编写接口

我正在尝试使用angular的新httpclient从api获取数据,我得到错误属性在IMessage []类型上不存在。如何为以下响应编写接口,

{"data":{"Messages":[{"Id":28,"MessageContent":"test data tsn","FromUserId":"74df8f98-2925-4242-8d32-8b09f3691396","UserName":"365@test.com","ToUserId":"96b1c943-ade0-4026-b8ed-0f4a6231e586","ProductId":null,"ParentMessageId":null,"Subject":"Test Message by Dev Team","StyleNumber":null}],"Pagination":{"Page":1,"PageLength":20,"TotalRecords":20,"TotalPages":1},"MessageLimit":{"TotalMessageCount":5,"RemainingMessageCount":3}}}
Run Code Online (Sandbox Code Playgroud)

我在这里尝试过的

export interface IMessage {
    data: {
        Messages: Messages[];
    };
}

interface Messages {
    id: number;
    messageContent: string;
    fromUserId: string;
    toUserId: string;
    productId?: number;
    parentMessageId?: number;
    subject: string;
    styleNumber?: string;
}
Run Code Online (Sandbox Code Playgroud)

我在stackblitz上的代码

在此处输入图片说明

// Here is the code
    import { Component, Input, OnInit } from '@angular/core';
import { Observable } from 'rxjs/Observable';
import { IMessage } from './message.interface';
import { HttpClient, HttpResponse, HttpParams, HttpHeaders } from '@angular/common/http';

@Component({
  selector: 'hello',
  template: …
Run Code Online (Sandbox Code Playgroud)

angular-cli angular

1
推荐指数
1
解决办法
2644
查看次数

错误输入:使用ng build --prod构建时无法解析服务的所有参数

DataService的

import { Injectable } from '@angular/core';
import { Http, RequestOptions, Headers } from "@angular/http";
import { environment } from "../../environments/environment";
import 'rxjs/add/operator/map';

@Injectable()
export class DataService {

  public options: RequestOptions;

  constructor(protected url: string, protected http: Http) {
  }

  getAll() {
    return this.http.get(this.url, this.options)
      .map(
      response => response.json()
      )
  }

  get(id: string) {
    return this.http.get(this.url + '/' + id, this.options)
      .map(response => {
        return response;
      })
  }

  create(resource) {
    return this.http.post(this.url, resource, this.options)
      .map(response => {
        return response;
      })
  } …
Run Code Online (Sandbox Code Playgroud)

service build production-environment angular-cli angular

1
推荐指数
1
解决办法
600
查看次数

如何将forRoot()模块的方法的参数传递给提供者?

我找到了一些模块的forRoot()方法的例子,如下所示:

export class CoreModule {
constructor(
@Optional()
@SkipSelf()
parentModule: CoreModule
) {
if (parentModule) {
  throw new Error(
    'CoreModule is already loaded. Import it in the AppModule only'
  );
 }
}
static forRoot(someParameters?:string[]): ModuleWithProviders {
  return {
  ngModule: CoreModule,
  providers: [AnProvider1, AnProvider2]
 };
}
Run Code Online (Sandbox Code Playgroud)

但是,如何将参数值传递给模块的任何声明的提供者?

angular-cli angular

1
推荐指数
1
解决办法
1232
查看次数

ng build throws error:"试图找到引导代码,但不能."

在尝试使用我的应用程序时ng-build,我收到以下错误:

试图找到引导代码,但不能.指定静态可分析引导代码或将entryModule传递给plugins选项.

我指定的主文件.angular-cli.json非常简单:

import { NgModule } from '@angular/core';
import { LoginComponent } from './login.component';
import { BrowserModule } from '@angular/platform-browser';
import { FormsModule } from '@angular/forms';
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'
import { HttpClientModule } from '@angular/common/http';
import { LoginService } from '../login.service'


@NgModule({
    declarations: [
        LoginComponent
    ],
    imports: [
        BrowserModule,
        FormsModule,
        HttpClientModule
    ],
    providers: [LoginService],
    bootstrap: [LoginComponent]
})
export class AppModule { }

platformBrowserDynamic().bootstrapModule(AppModule);
Run Code Online (Sandbox Code Playgroud)

ng --version 返回以下内容:

Angular CLI: 1.7.0
Node: 6.11.0
OS: …
Run Code Online (Sandbox Code Playgroud)

angular-cli angular ng-build

1
推荐指数
1
解决办法
2831
查看次数

npm更新后angular-cli构建错误

切换到我的新电脑,它有更新的节点版本等.我尝试建立我的角度项目设置与角度cli时出现以下错误:

开始:

10%构建模块2/2模块0活动(节点:14472)DeprecationWarning:不推荐使用Tapable.plugin..hooks而是使用新的API

后来:

错误:Chunk.parents:改为使用ChunkGroup.getParents()

在谷歌中没有找到任何关于此错误的结果

  • npm Verions:5.7.1
  • v8.9.0

packageconfig:

{
  "name": "...",
  "version": "0.0.0",
  "license": "MIT",
  "scripts": {
    "ng": "ng",
    "build": "webpack",
    "build-css": "node build-sass.js",
    "test": "karma start ./karma.conf.js",
    "lint": "ng lint",
    "e2e": "protractor ./protractor.conf.js",
    "pree2e": "webdriver-manager update --standalone false --gecko false --quiet"
  },
  "private": true,
  "dependencies": {
    "@angular/animations": "^5.2.0",
    "@angular/common": "^5.2.0",
    "@angular/compiler": "^5.2.0",
    "@angular/core": "^5.2.0",
    "@angular/forms": "^5.2.0",
    "@angular/http": "^5.2.0",
    "@angular/platform-browser": "^5.2.0",
    "@angular/platform-browser-dynamic": "^5.2.0",
    "@angular/router": "^5.2.0",
    "core-js": "^2.4.1",
    "rxjs": "^5.5.6",
    "zone.js": "^0.8.19"
  },
  "devDependencies": {
    "@angular-devkit/core": "0.3.1", …
Run Code Online (Sandbox Code Playgroud)

node.js npm webpack angular-cli

1
推荐指数
1
解决办法
1429
查看次数

Angular CLI在更改路由上刷新内容

我有一个Angular CLI应用程序。

在应用程序中,我有一个地图(在右侧)和左侧面板(显示有关路线的当前信息)。如果我单击地图,则openlayers将找到最近的要素,并将我重定向到/ map / routeID / detail。一切都像魅力一样工作(在详细信息组件的TS上,我从API加载数据,并且一切正常)。问题是...如果我单击到另一个地方(在其他路线附近),则URL更改(因此,我已重定向到另一个路线详细信息)。但是这些信息是古老的(来自另一条路线)。我正在NgOnInit中进行加载,我尝试打印控制台字符串,但是当我的路由从Fox示例/ map / 1 / detail更改为/ map / 2 / detail时,我发现NgOnInit没有被调用。

我该如何处理?例如,如果路由更改,则再次触发NgOnInit或类似的操作。

typescript angular-cli angular

1
推荐指数
1
解决办法
733
查看次数

角材料组件不起作用

If someone wants to down vote then also add the reason
Run Code Online (Sandbox Code Playgroud)

我在配置中缺少什么吗?请提前建议谢谢

ng版本命令

Versions
Angular CLI: 1.7.0
Node: 8.1.1
OS: win32 x64
Angular: 5.2.5
... common, compiler, compiler-cli, core, forms, http
... language-service, platform-browser, platform-browser-dynamic
... router

@angular/animations: 5.2.9
@angular/cdk: 5.2.4
@angular/cli: 1.7.0
@angular/material: 5.2.4
@angular-devkit/build-optimizer: 0.3.1
@angular-devkit/core: 0.3.1
@angular-devkit/schematics: 0.3.1
@ngtools/json-schema: 1.2.0
@ngtools/webpack: 1.10.0
@schematics/angular: 0.3.1
@schematics/package-update: 0.3.1
typescript: 2.5.3
webpack-bundle-analyzer: 2.11.1
webpack: 3.11.0
Run Code Online (Sandbox Code Playgroud)

复制步骤

步骤1使用新的任意名称创建新项目。步骤2按照https://material.angular.io/guide/getting-started上的步骤操作, 即

npm install --save @angular/material @angular/cdk
    npm install --save @angular/animations
Run Code Online (Sandbox Code Playgroud)

第三步 …

javascript typescript angular-material angular-cli angular

1
推荐指数
2
解决办法
5246
查看次数

Angular 5的默认编译是什么?(AOT或JIT)

在Angular的网站上,我读到默认编译是JIT:

在此输入图像描述

https://angular.io/guide/aot-compiler

我想当它在官方Angular网站上时,它必须是JIT,但在许多其他页面上,我读到AOT是Angular 5中的默认编译.

这让我有点困惑.在这个问题中,它还说AOT是默认值:AOT编译是否为angular@4.0.0的默认值?

现在怎么样?

jit angular-cli angular angular-aot

1
推荐指数
1
解决办法
2724
查看次数

Angular2-找不到NgModule

您好,我刚刚使用简单的方法从CLI创建了一个新项目

ng new frontend
Run Code Online (Sandbox Code Playgroud)

命令,但是一旦进入项目,我将执行以下操作:

cd frontend/src/app
Run Code Online (Sandbox Code Playgroud)

并尝试生成一个像这样的新组件

ng generate component about
Run Code Online (Sandbox Code Playgroud)

我在终端机(MacOS)中收到以下错误消息:找不到NgModule。使用跳过导入选项可跳过NgModule中的导入。

我已经全局安装了Angular 2,并且在运行时

ng --version
Run Code Online (Sandbox Code Playgroud)

我收到以下信息:

Angular CLI: 6.0.0
Node: 8.11.1
OS: darwin x64
Angular: 
... 

Package                      Version
------------------------------------------------------
@angular-devkit/architect    0.6.0
@angular-devkit/core         0.6.0
@angular-devkit/schematics   0.6.0
@schematics/angular          0.6.0
@schematics/update           0.6.0
rxjs                         6.1.0
typescript                   2.7.2
Run Code Online (Sandbox Code Playgroud)

我的内心Angular.json有:

{
  "$schema": "./node_modules/@angular/cli/lib/config/schema.json",
  "version": 1,
  "newProjectRoot": "projects",
  "projects": {
    "frontend": {
      "root": "",
      "sourceRoot": "src",
      "projectType": "application",
      "prefix": "app",
      "schematics": {},
      "architect": {
        "build": {
          "builder": "@angular-devkit/build-angular:browser",
          "options": {
            "outputPath": "dist/frontend",
            "index": …
Run Code Online (Sandbox Code Playgroud)

macos terminal angular-cli angular

1
推荐指数
1
解决办法
3510
查看次数