小编Jul*_*eau的帖子

使用带参数的ng2-translate

我尝试在模板中使用ng2-translate参数:

{{ test | translation:{value:param} }}
Run Code Online (Sandbox Code Playgroud)

而且效果很好.我想在我的打字稿中建立我的翻译,我看到了这个功能:

get(key: string|Array<string>, interpolateParams?: Object): Observable<string|Object>
Run Code Online (Sandbox Code Playgroud)

但我不知道如何使用它.

你们有什么例子吗?

我的情况是:

en.json:

{ "test":"the level of {value1} and {value2} is low."}
Run Code Online (Sandbox Code Playgroud)

打字稿:

let message:string = "";
let parametres = ["1", "2"];
this._translateService.get("test", parametres).subscribe((res:string) => {
    message += res;
});
Run Code Online (Sandbox Code Playgroud)

我想:1和2的水平很低.

非常感谢.

ng2-translate angular

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

使用 Jasmine toThrowError 时似乎无法捕获错误

我开始尝试 jasmine,我想使用 toThrowError() 函数,但我的测试不想成功。

我有一个函数会抛出错误:

测试.service.ts

test(list:{}){ 
    if(list == null){
        throw new TypeError();
    }
    else{
        // do something...
    }
}
Run Code Online (Sandbox Code Playgroud)

我的测试:

it('shall throw an error', inject()
    [
        TestService
    ],
    (
        testService: TestService
    ) => {
        let test = testService.test(null);
        expect(test).toThrowError(TypeError);
    }
);
Run Code Online (Sandbox Code Playgroud)

我的测试因 Uncaught TypeError 失败(当我调用它时,我是在 try catch 中执行的)。

jasmine typescript angular

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

Angular 2 Custom Pipe

我正在关注egghead.com上关于Angular 2的John Lindquist,并且在完成与他完全相同的事情后,我没有相同的结果.

这是关于课程17.

我有一个完美的自定义过滤器:

开始,pipe.ts

import {Pipe} from '@angular/core';

@Pipe({
    name: "started"
})

export class StartedPipe{
    transform(value, [status]){
        return value.filter((item)=> item.status === "started");
    }
}
Run Code Online (Sandbox Code Playgroud)

待办事项,list.ts

import {Component, Input} from '@angular/core';
import {TodoService} from "./todo-service";
import {TodoItemRenderer} from "./todo-item-renderer";
import {StartedPipe} from './started-pipe';

@Component({
    selector: 'todo-list',
    pipes: [StartedPipe],
    directives: [TodoItemRenderer],
    template: `
        <div>
            <ul>
                <li *ngFor="let todo of todoService.todos | started :     'started'">
                    <todo-item-renderer 
                    [todo]="todo"
                    (toggle)="todoService.toggleTodo($event)">
                    </todo-item-renderer>
                </li>
            </ul>
        </div>
    `
})

export class TodoList{
    @Input() status;
    constructor(public todoService: …
Run Code Online (Sandbox Code Playgroud)

angular

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

标签 统计

angular ×3

jasmine ×1

ng2-translate ×1

typescript ×1