我有一个对象,其中所有键都是字符串,一些值是字符串,其余的是这种形式的对象:
var object = {
"fixedKey1": "something1",
"fixedKey2": "something2",
"unknownKey1": { 'param1': [1,2,3], 'param2': "some2", 'param3': 'some3'},
"unknownKey2": { 'param1': [1,2,3], 'param2': "some2", 'param3': 'some3'},
"unknownKey3": { 'param1': [1,2,3], 'param2': "some2", 'param3': 'some3'},
...
...
};
Run Code Online (Sandbox Code Playgroud)
在这个对象中fixedKey1,fixedKey2是该对象中存在的已知键.unknownKey - 值对可以从1-n变化.
我尝试将对象的接口定义为:
interface IfcObject {
[keys: string]: {
param1: number[];
param2: string;
param3: string;
}
}
Run Code Online (Sandbox Code Playgroud)
但是这会引发以下错误:
类型编号的变量不能分配类型对象
我发现它无法将此接口分配给"fixedKey - value"对.
那么,我该如何对这种变量进行类型检查呢?
我正在尝试使用哈希位置策略创建应用程序,但它不会将哈希添加到URL.例如,当我点击与{path:'/ polls',name:'Polls',component:PollsComponent}关联的按钮时,它会使用此url加载页面:localhost:3000/polls.
我需要更改以获取哈希位置策略?如果我想使用哈希位置策略,为什么必须设置默认基本URL?
这是app.component.ts中的路由,其中定义了所有路由:
import {Component} from 'angular2/core'
import {HTTP_PROVIDERS, Http} from 'angular2/http';
import 'rxjs/Rx'; // load the full rxjs
import {ROUTER_PROVIDERS, RouteConfig , ROUTER_DIRECTIVES} from 'angular2/router';
import { ResultsComponent } from './results/results.component'
import { VotingCardsComponent } from './votingcards/votingcards.component'
import { DashBoardComponent } from './dash/dash.component'
import { PollsComponent } from './pollslist/pollslist.component'
@Component({
selector: 'my-app',
templateUrl: 'app/app.component.html',
directives: [ROUTER_DIRECTIVES, ResultsComponent, VotingCardsComponent, DashBoardComponent],
providers: [HTTP_PROVIDERS,
ROUTER_PROVIDERS]
})
@RouteConfig([
{ path: '/vote', name: 'VotePage', component: VotingCardsComponent },
{ path: '/votepoll/:id', name: 'VotePoll', component: …Run Code Online (Sandbox Code Playgroud) 我遇到了麻烦uploading multiple file to different urls using ng2-file-upload method.
我正在使用这个repo https://github.com/valor-software/ng2-file-upload
来实现这个目标.ng2-file-upload使用此演示轻松集成到我的应用程序中上传文件.此外,他们还提供了一种在特定网址上传多个文件的方法.
但我想上传different files at different url,我还没有找到.
// sample code
import { Component } from '@angular/core';
import { FileUploader } from 'ng2-file-upload';
const URL = '/api/some_url';
@Component({
selector: 'simple-demo',
templateUrl: './simple-demo.html'
})
export class SimpleDemoComponent {
public uploader:FileUploader = new FileUploader({url: URL}); // here to add url
}
Run Code Online (Sandbox Code Playgroud)
这FileUploader提供url了上传文件的方法.该方法的有用之处在于,progress-bar相关特征与该ng2-file-uploader组件集成在一起.我搜索了很多,但无法找到任何上传到不同网址的解决方案.
任何有用的建议将不胜感激!
我构建了一个具有以下文件结构的应用程序:
我正在为此应用程序使用 Typescript 和 Angular2。我在 .ts 文件上有观察者,当有任何变化时,会自动编译打字稿文件。.ts 文件位于/assets/app文件夹中,转译的 .js 文件的输出目录是 /public 应用程序文件。
这工作正常,但是当 CRUD 处理任何 .html 文件时,我必须直接在/public/app文件中编辑这些文件,因为它们由于是 .html 而不是 .ts 文件而不会被转换。
我想知道(对于 Angular2 和 Typescript 来说相当新)是否有任何方法可以让 html 视图文件在创建和更新时自动移动到公共文件夹?
这是我当前的 npm 命令,它监视 NodeJS 和 .ts 文件的变化:
"start": "concurrently \"tsc -w \" \"nodemon ./bin/www\"",
Run Code Online (Sandbox Code Playgroud)
谢谢
我想用ssr部署angular应用程序。我最近发现,有一些nestjs角度图可以自动添加ssr功能,但我没有找到有关如何部署此项目的任何教程或说明,因此可以得到ssr。
我的步骤是:
nestjs功能上,而服务器将位于云功能上,并将被调用以进行预渲染。我有一个包含多个Web项目的解决方案.并且存在tsconfig用于在解决方案中构建所有打字稿的共同点.构建是通过webpack,所以我不希望Visual Studio提供任何打字稿.更准确地说,我需要一些支持 - 在导航和重构中,但我不希望VS构建此代码.
所以我删除了所有对typescript目标的引用csproj,一切正常.但是每当我添加一个新的打字稿文件时,VS都乐于说
您的项目已配置为支持TypeScript
并将所有打字稿目标返回给csproj.
我可以阻止VS这样做吗?当然我可以忍受它,但每次添加后从csproj中删除垃圾似乎不舒服.
UPD:在VS https://visualstudio.uservoice.com/forums/121579-visual-studio-ide/suggestions/13420095-ask-to-configure-projects-for-typescript的 uservoice上找到帖子.但也许已经有了解决方案.或者你可以喜欢这个用户发票,如果你同意这是一个恼人的问题:)