小编Rhu*_*esh的帖子

Angular2中的生产和开发模式有什么区别?

出于某种原因,我必须在生产模式下运行我的应用程序.这些模式有什么区别?

development-environment production-environment angular

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

在新标签页中打开新窗口

我试图在用户点击按钮时打开一个新窗口,如下所示:

protected assignActity(type: string): void {
    var window = window.open('/#/link');
    this.Service.assignActivity(type).subscribe(res => {
      window.location = '/#/link/' + res;
      console.log(res);
    })
  }
Run Code Online (Sandbox Code Playgroud)

但是它引发了一个错误:

core.umd.js:3468 TypeError: Cannot read property 'open' of undefined
Run Code Online (Sandbox Code Playgroud)

如何纠正它让它工作?

tabs window typescript angular

32
推荐指数
1
解决办法
8万
查看次数

找不到模块'angular2/angular2'

我正在开发一个带有angular2和gulp的节点应用程序.我已经编写了一个组件文件login.ts,如下所示:

import {Component, View} from 'angular2/angular2';
import {FormBuilder,  formDirectives } from 'angular2/forms';
@Component({
  selector: 'login',
  injectables: [FormBuilder]
})
@View({
  templateUrl: '/scripts/src/components/login/login.html',
  directives: [formDirectives]
})

export class login {

}
Run Code Online (Sandbox Code Playgroud)

我的bootstrap.ts文件是:

import {bootstrap} from 'angular2/angular2';

import {login} from './components/login/login';

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

但是当我编译这些文件时,它会给我以下错误:

client\bootstrap.ts(1,25): error TS2307: Cannot find module 'angular2/angular2'.
client\components\login\login.ts(1,31): error TS2307: Cannot find module 'angular2/angular2
client\components\login\login.ts(2,45): error TS2307: Cannot find module 'angular2/forms'.
Run Code Online (Sandbox Code Playgroud)

这是我的tsconfig.json:

{
    "compilerOptions": {
        "target": "es5",
        "module": "commonjs",
        "sourceMap": true,
        "watch": true,
        "removeComments": true,
        "moduleResolution": "node",
        "emitDecoratorMetadata": true,
        "experimentalDecorators": …
Run Code Online (Sandbox Code Playgroud)

node.js typescript angular

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

如何在Nodejs中处理angular2路径?

我正在使用Angular2开发NodeJS应用程序.在我的应用程序中,我有一个主页和搜索页面.对于主页,我有一个HTML页面,它将为localhost:3000 /和主页用户导航到搜索,localhost:3000 / 我通过angular2路由处理的搜索页面.

我没有搜索页面的页面,其视图由angular2呈现.但是当我直接命中localhost:3000/search因为我在我的节点应用程序中没有这个路由时它会给出错误.

我不知道如何在节点应用程序中处理这个?

node.js angular2-routing angular

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

如何在mogoose中嵌套填充中选择特定字段

这是我的架构:

var UserSchema = new Schema({
    email: String,
    name: String,
    city: String,
    username: String,
    profilePic: String,
    phoneNo: Number,
    shortList: {
        project: [{ type: Schema.ObjectId, ref: "Project" }],
        flat: [{ type: Schema.ObjectId, ref: "Flat" }],
    },

});

var FlatSchema = new Schema({
    project: { type: Schema.ObjectId, ref: "Project" },
    status: String,
    floor: Number,
    size: String,
    type: String,
    flat_number: String,
    price: Number,
    flooringType: String,
    createdAt: { type: Date, 'default': Date.now },
    isDeleted: { type: Boolean, 'default': false },
   });

var ProjectSchema = …
Run Code Online (Sandbox Code Playgroud)

mongoose mongodb mongoose-populate mongoose-schema

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

在nodejs typescript app中没有定义define

我正在使用typescript中的nodejs app,我在其中写了一个文件server.js作为fallow:

import express = require('express');
import mongoose = require('mongoose');


let app=express();
app.set('port', process.env.PORT || 3000); // Set port to 3000 or the provided PORT variable


/**
 * Start app 
 */
app.listen(app.get('port'), function() {
  console.log(`App listening on port ${app.get('port')}!`);
});
Run Code Online (Sandbox Code Playgroud)

我使用gulp traspile生成js文件为

define(["require", "exports", 'express'], function (require, exports, express) {
    var app = express();
    app.set('port', process.env.PORT || 3000); // Set port to 3000 or the provided PORT variable
    /**
     * Start app
     */
    app.listen(app.get('port'), function () {
        console.log("App listening on …
Run Code Online (Sandbox Code Playgroud)

javascript node.js typescript

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

在 angular 2 应用程序中使用 getter setter 是一个好习惯吗

我正在开发 angular2 应用程序,其中我的团队成员使用 getter 和 setter 来设置输入属性,如下所示

private _showModal;
@Input() set showModal(showModal){
     this._showModal = showModal;
}
get showModal() {
     return this._showModal;
}
Run Code Online (Sandbox Code Playgroud)

但我不确定这是一个很好的方法来做到这一点。我认为在开发人员必须在设置或获取值时进行一些验证或检查或执行其他一些功能的情况下,应该使用 getter setter

getter-setter angular

8
推荐指数
2
解决办法
4400
查看次数

如何在sql server中调用递归函数

我有一张桌子如下

cat_id  Cat_Name    Main_Cat_Id

1       veg         null
2       main course 1
3       starter     1
4       Indian      2
5       mexican     2
6       tahi        3
7       chinese     3
8       nonveg      null
9       main course 8
10      indian      9
11      starter     8
12      tahi        11
13      chinese     11
Run Code Online (Sandbox Code Playgroud)

(Main_Cat_Id是之前添加的类别的cat_id)

这个表被用于类别其中产品蔬菜类有两个子类别主菜起动机,其是通过识别main_cat_id 和那些子类别再次具有子类别如印度墨西哥

这种分类取决于用户; 他可以为印度人,墨西哥人添加更多子类别,以便他可以进行任何级别的分类

现在我必须选择任何节点的所有子类别,如果我采取veg我必须选择

(1)veg > (2)main course(1) > (4)indian(2)
                           > (5)mexican(2)
       > (3)starter(1)     > (6)thai(3)
                           > (7)chinese(3)
Run Code Online (Sandbox Code Playgroud)

形成字符串1,2,4,5,3,6,7 …

sql-server sql-function sql-server-2008

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

sendgrid给出错误sendgrid.Email不是构造函数

我正在使用sendgrid发送电子邮件.但是当我尝试创建电子邮件对象时,如下所示

let email = new sendgrid.Email();
email.addTo("rhushikeshl@test.com");
email.setFrom("customercare@test.com");
email.setSubject("New Unit Added");
email.setHtml("New unit addded </br> Unit Id =" + savedUnit._id);
sendgrid.send(email, function(err, json) {
    if (err) {
        console.log("Error: " + err);
    } else {
        console.log(json);
    }
});
Run Code Online (Sandbox Code Playgroud)

但它给出了错误

在此输入图像描述

https://sendgrid.com/docs/Integrate/Code_Examples/v2_Mail/nodejs.html

email sendgrid

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

@Injectable() 和 @Inject 的区别是什么

我正在开发 angular2,我已经创建了服务并在组件中使用 @Inject 注入这些服务。我对 @Injectable() 在服务本身中的使用以及它产生的差异感到困惑。

inject injectable angular

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