小编Fra*_*rzi的帖子

Angular 2引导函数给出错误"参数类型AppComponent不可分配给参数类型类型"

这是我第一个Hello World来自Angular 2快速入门指南的简单角度2应用程序.

import {Component} from 'angular2/core';
import {bootstrap} from 'angular2/platform/browser';
@Component({
    selector: 'ng2-app',
    template: '<h1>My first Angular 2 App</h1>'
})
export class AppComponent { }


bootstrap(AppComponent);
Run Code Online (Sandbox Code Playgroud)

当我运行时,应用程序运行正常npm start但我的IntelliJ IDE在行中显示错误bootstrap(AppComponent)

参数类型AppComponent不能分配给参数类型Type

Angular 2打字稿警告

查看bootstrap函数声明,AppComponent需要扩展Type.

export declare function bootstrap(appComponentType: Type, customProviders?: Array<any>): Promise<ComponentRef>;
Run Code Online (Sandbox Code Playgroud)

我的问题是:

是否期望Angular组件扩展Type

javascript intellij-idea typescript angular

44
推荐指数
4
解决办法
2万
查看次数

Django与Angular 2

我想将Angular 2与Django集成,我还有一些问题需要解决.

  1. 如何将Angular 2的插值语法更改{{ }}(( ))或类似的?

  2. 如何将cookie中的CSRF令牌添加到每个HTTP帖子?

在Angular 1中,我做了类似这样的事情:

.config(function($httpProvider) {
    $httpProvider.defaults.xsrfCookieName = 'csrftoken';
    $httpProvider.defaults.xsrfHeaderName = 'X-CSRFToken';
});
Run Code Online (Sandbox Code Playgroud)
  1. 将Angular 2与Django集成是一个好主意吗?

django angular

44
推荐指数
2
解决办法
4万
查看次数

如何使用无头浏览器运行测试?

使用:

ng test

Angular CLI默认在Chrome中运行测试,这很棒,但是如果我需要在仅限控制台的环境(无头浏览器)中运行它们呢?

如果我可以指定我是否希望每次运行时都不需要浏览器,那将是很好的,所以类似于:

ng test --browsers MyHeadLessBrowser


编辑:

运行PhantomJS我得到以下内容:

PhantomJS 2.1.1(Linux 0.0.0)ERROR TypeError:useValue,useFactory,数据不可迭代!在http:// localhost:9876/_karma_webpack_/polyfills.bundle.js:854


eferenceError:在国际:找不到变量的http://本地主机:9876/_karma_webpack_/vendor.bundle.js(线49362)intlDateFormat @ HTTP://本地主机:9876/_karma_webpack_/vendor.bundle.js:49362:20

unit-testing jasmine karma-runner angular-cli angular

43
推荐指数
4
解决办法
2万
查看次数

使用Angular 2

我们的团队对Angular 2的alpha版本感到非常兴奋,我们只是急切地等待它的稳定发布并开始使用它.但是在Misko的Angular 2的ng-conf 2015期间,我们遇到了令我困惑的以下事情

  1. 打字稿!是否真的需要使用typescript来获得更好的性能,而不是编写我们一直在做的简单的JS代码.我们发现了一些评论说明打字稿有助于提高性能.

  2. ES6功能.由于角度2将使用很多es6功能,这意味着我们必须等待所有浏览器至少支持角度2所需的那些功能才能在我们的生产应用程序上启动它.

  3. Web组件.由于角度2提供了创建Web组件的工具,而且我发现了一些关于创建自己的(使用聚合物)的博客,我们的团队创建它们有多难?或者,如果我们坚持旧的指令创造的事情,它会更好吗?

  4. 性能.我已经看过Angular + React的这个视频,它提供了角度与角度+反应与角度2的良好比较.但是我不确定角度2是否真的很快或者如果我们可以继续建立角度+反应应用程序,以避免等待角度2稳定或浏览器支持角度使用的es6功能.

我不确定我是否已经很好地构建了我的问题,但在我开始学习角度2之前,上面是我的担忧,因为他们演示角度2 +打字稿似乎会为我和我的团队带来很多收益曲线.

如果有人能澄清我上面列出的问题,我将非常感激.

谢谢.

javascript angular

41
推荐指数
2
解决办法
8560
查看次数

Angular ActivatedRoute数据返回一个空对象

我有一条注册了一些数据的路线:

const routes: Routes = 
[
    {path: 'my-route', data: { title: 'MyTitle' }, component: MyComponent},
];
Run Code Online (Sandbox Code Playgroud)

我正在尝试使用以下方法访问路线的数据ActivatedRoute:

import { Component, OnInit } from '@angular/core';
import { ActivatedRoute } from '@angular/router';

@Component({...})
export class MyComponent implements OnInit {
  private routeData;

  constructor(private route: ActivatedRoute) {}

  ngOnInit() {
    this.routeData = this.route.data.subscribe((data) => {
      console.log(data); // this is returning an empty object {}
    });
  }
}
Run Code Online (Sandbox Code Playgroud)

但由于某些原因,这data是一个空洞的对象.

如何解决这个问题呢?

typescript angular-routing angular

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

TS2307:在TypeScript上导入Angular2时找不到模块'angular2/core'

嗨,我有一点点Angular 1背景,我正在学习Angular 2.

对于使用Angular 1启动,只有依赖是添加角度源angular.js或者angular.min.js,

通过脚本标记尝试使用Angular 2时,

<script src="angular2.js"></script>
Run Code Online (Sandbox Code Playgroud)

我收到的错误是,

  • Uncaught ReferenceError: System is not defined
  • Uncaught ReferenceError: define is not defined

所以我搜索了SE并找到了,system.js并且require.js必须在加载之前加载angular2.

我设法加载这两个库的任何方式,

我喜欢编译TypeScript并提供js文件,而不是将所有脚本发送到客户端并编译/转换客户端的所有内容.

我的IDE是WebStorm,当我尝试编写一个简单的组件时,

import {Component} from 'angular2/core';

@Component
class Hello{
    name:string;

    constructor() {
        this.name = "HelloWorld";
    }
}
Run Code Online (Sandbox Code Playgroud)

我在TypeScript编译器上收到此错误main.ts,编译为main.js,

Error:(1, 25) TS2307: Cannot find module 'angular2/core'.
Run Code Online (Sandbox Code Playgroud)

TypeScript编译所有内容但不从angular进行导入.

我的简单index.html如下所示,

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Hello World</title>

</head>
<body> …
Run Code Online (Sandbox Code Playgroud)

javascript typescript angular

31
推荐指数
2
解决办法
9万
查看次数

是angular2 mvc?

我曾在Angular 1工作.它显然有一个控制器,它充当了View和Model之间的中介.我意识到在Angular 2中我们没有任何控制器.

那么我们仍然可以将Angular 2称为MVC框架吗?我知道MVC是一种设计模式,你可以用任何语言实现它.但是,关于Angular 1,我从很多人那里听说它是一个MVC框架,我看到的大多数例子都说明Angular 1是MVC,Controller将Model与View分开.所以,我想知道,现在在Angular2中有组件,我们仍然可以将其称为MVC吗?或者作为组件本身遵循MVC范例,因为我确实看到在每个组件中我们分开View和Data并使用绑定,也许我们仍然可以将其称为MVC.

angular

29
推荐指数
3
解决办法
4万
查看次数

ngx-bootstrap modal:如何从模态中获取返回值?

在我的Angular 4应用程序中,我们假设我在服务中.

在某些时候,我想要求用户进行确认,目前我只是在做一个confirm(...)请求:

const result = confirm('Are you sure?');

如果相反我想显示一个ngx-bootstrap 模态,比方说,两个按钮"是"或"否",并获得类似的结果?


编辑:在我的情况下,我通过玩主题解决了我的问题.在这里,您可以找到我的解决方案,以防它对其他人有用.然而,该解决方案并没有解决这个问题,即从模态返回一个值,所以我把它打开.

modal-dialog confirm-dialog ngx-bootstrap angular

28
推荐指数
2
解决办法
3万
查看次数

Typescript 1.8模块:从文件夹导入所有文件

我正在使用Typescript构建一个包含100个独立ts文件的大型库.以前我使用导出模块XXX(稍后重命名为导出命名空间XXX)用于我的所有类,但正如书中所说,这不是推荐的方式,我应该使用import.

所以我尝试导入.这工作得很好:

import * as mylib from "./source/source.ts";
Run Code Online (Sandbox Code Playgroud)

但由于我有100个文件,我不想为所有这些文件添加这样的行.我想通过mylib变量访问所有类.

所以我尝试了这个:

import * as mylib from "./source/";
Run Code Online (Sandbox Code Playgroud)

但是一旦我这样做,我得到:找不到模块'./source/'

有没有办法从一个包含多行文件的文件夹中导入所有类?

typescript typescript1.8

26
推荐指数
1
解决办法
3万
查看次数

Angular2:ngModule,BrowserModule,FormsModule不是导出成员

我将通过https://angular.io/docs/ts/latest/tutorial/toh-pt5.html上的Angular2教程 .一切顺利的路由.Visual Studio代码显示前03行的错误:

import { NgModule }       from '@angular/core';
import { BrowserModule }  from '@angular/platform-browser';
import { FormsModule }    from '@angular/forms';
Run Code Online (Sandbox Code Playgroud)

[ts] 
Module '"c:/Users/ktran/Source/Repos/angular2-quickstart-ts/node_modules/@angular/core/index"' has no exported member 'NgModule'.
Run Code Online (Sandbox Code Playgroud)

文件夹node_modules:

在此输入图像描述

有什么想法吗?

angular

26
推荐指数
3
解决办法
4万
查看次数