小编dan*_*man的帖子

如何在指令的单元测试中模拟角度转换过滤器

在我的指令模板中,我需要使用角度平移过滤器:

    <label for="data-source-btn">
      <span id="data-source-btn-span"></span>
      {{'Data Source' | translate}}
    </label>
Run Code Online (Sandbox Code Playgroud)

然后在我对该指令的单元测试中,我收到错误:

未知提供者:translateFilterProvider < - translateFilter

我试过注射$filter并获得$translate由$translate = $filter('translate');不解决问题-这是真的用于测试过滤器

我可以注入模块pascalprecht.translate,但这很重要.我如何最好地模拟过滤器?

unit-testing angularjs angular-translate angular-filters

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

git checkout错误:无法创建文件

在将git存储库从Linux克隆到Windows系统时,我在结帐阶段遇到以下错误:

$ git clone gituser @ serveraddr:/git/git_repo.git git_WA
克隆到'git_WA'...
gituser @ serveraddr的密码:
remote:计数对象:500846,完成.
remote:压缩对象:100%(118676/118676),完成.
远程:总计500846(delta 307739),重用483023(delta 291136)
接收物体:100%(500846/500846),907.54 MiB | 完成9.04 MiB/s.
解决增量:100%(307739/307739),完成.

错误:无法创建文件RealR**************************************************************************************************************************************************************************************************************validation.xml(没有这样的文件或目录)
签
出文件:100%(441329/441329)签出文件:100%(441329/441329),完成.
完成.

案例2:克隆为裸仓库,从本地裸仓库中检出全部=>相同的错误.

案例3:直接克隆C:\中的仓库,结账成功,无错误.

- >看起来像文件名/文件路径长度限制的问题.

案例4:从SVN repo签出相同的文件.能够在任何位置结账,没有任何问题.因此从Windows端没有问题.(是的,我在SVN和GIT中都有数据,我只是从SVN迁移到GIT).

因此,问题必须在msysgit内,一些文件路径长度限制.可以调整gitclient/msysgit中的路径长度吗?

Edit1:所有操作都尝试使用TortoiseGIT客户端v1.8.0和git-bash:git版本1.8.0.msysgit.0.
Edit2:添加了克隆时使用的实际命令.

windows git filepath git-checkout

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

单元测试Angular 4中的HttpInterceptor

你能告诉我如何测试Angular 4提供的HttpInterceptor.我根据例子创建了一个拦截器,但不知道如何测试它.下面是我的拦截器,我想测试是否添加了自定义标头以及何时完成响应状态为401 window.location.href.

export class MyInterceptor implements HttpInterceptor {

    intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
        const headers = new HttpHeaders();
        this.addHeader(headers); // This will add headers

        const changedReq = req.clone({ headers: headers });
        return next.handle(req)
            .catch(err => {
                if (err instanceof HttpErrorResponse) {
                    switch (err.status) {
                        case 302:
                        case 401:
                            window.location.href = "http//google.com";
                            break;             
                        default:
                            throw new Error(this.getErrorMessage(err));
                    }
                }

                return Observable.throw(err);
            });
    }
Run Code Online (Sandbox Code Playgroud)

angular

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

可以在JavaScript中替换var吗?

我来自Java背景并开始学习JavaScript.

使用关键字let声音在JavaScript中声明变量是使用类似的范围规则来声明Java中的变量.在JavaScript中提升的概念令人困惑(考虑我的C++/Java背景),我没有看到使用let代替的任何陷阱var.

我的理解是否正确?

javascript

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

ID结束于纯Javascript

我在一个Javascript库中工作,它为一件事带来了jQuery:一个"结束于"选择器.它看起来像这样:

$('[id$=foo]')
Run Code Online (Sandbox Code Playgroud)

它将找到id以"foo"结尾的元素.

我希望没有jQuery(直接JavaScript)这样做.你怎么能这样做?我也希望它尽可能高效.

javascript css-selectors

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

为什么这有$ rootscope.$ new()?

我正在研究如何将Jasmine与Karma一起使用.我试图将一个范围注入我的控制器,从某个地方我已经拿起这个代码......

var scope = { message: 'hello' };

beforeEach(angular.mock.module('myApp'));

beforeEach(angular.mock.inject(function ($rootScope, $controller) {

    scope = $rootScope.$new();

    $controller('myController', { $scope: scope });

}));
Run Code Online (Sandbox Code Playgroud)

问题是该范围正在被线条消灭......

scope = $rootScope.$new();
Run Code Online (Sandbox Code Playgroud)

所以我可以评论它,但我想知道这条线的用途是什么?我什么时候打电话$rootscope.$new()?我理解它与隔离有关,但我并没有真正得到它的实际应用.

更新:正如Tim指出的那样,这是一个问题,因为我已经宣布了自己的范围.所以我可以修改代码....

var scope;

beforeEach(angular.mock.module('myApp'));

beforeEach(angular.mock.inject(function ($rootScope, $controller) {

    scope = $rootScope.$new();

    scope.message = 'hello';

    $controller('myController', { $scope: scope });

}));
Run Code Online (Sandbox Code Playgroud)

这更符合预期,但我仍然想知道最好的方法是什么?什么是$rootscope.$new()连供?

angularjs

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

Angular2"没有导出的成员bootstrap"错误

我的Atom编辑器显示:

模块'"C:/ express4/node_modules/@ angular/platform-b​​rowser-dynamic/index"'没有导出成员'bootstrap'.at第2行col 10

对于TypeScript文件中的以下导入:

import { bootstrap } from '@angular/platform-browser-dynamic';
Run Code Online (Sandbox Code Playgroud)

知道这个警告的原因是什么?

typescript angular

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

浏览器不显示favicon.ico,但它存在

我的网站是http://belhimplast.by/en/ 我为它做了一个favicon.在head我有:

 <link rel="shortcut icon" href="/favicon.ico" type="image/x-icon">
Run Code Online (Sandbox Code Playgroud)

我可以使用URL http://belhimplast.by/favicon.ico看到favicon.ico

但是任何浏览器都没有显示它.请帮忙.

html favicon web

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

如何在服务器端获取HTML5本地存储值

我是.Net开发人员,我知道HTM5 localstorage是客户端存储技术.我想在服务器端获取本地存储数据.

为了从服务器端获取cookie值,我们Request.Cookie在ASP.NET中有.有没有这样的解决方案直接在服务器端获取本地存储值?请指导我.我正在使用.net 4.0框架

谢谢,吉布

javascript html5 local-storage c#-4.0

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

Node.js在使用--watch进行Angular 6构建期间崩溃

我在Mac上使用Node v8.12.0(虽然我已经在Node 9.x版本和Linux上看到了这个问题).

我正在开发Angular 6应用程序,并且正在使用--watchflag 运行dev构建.手表将运行,可以重建应用程序可能4或5次,然后Node崩溃与以下输出:

<--- Last few GCs --->

[34201:0x104000000]   273927 ms: Mark-sweep 1309.4 (1430.5) -> 1309.2 (1431.0) MB, 1296.0 / 0.0 ms  allocation failure GC in old space requested
[34201:0x104000000]   275358 ms: Mark-sweep 1309.2 (1431.0) -> 1309.2 (1424.0) MB, 1430.8 / 0.0 ms  last resort GC in old space requested
[34201:0x104000000]   276946 ms: Mark-sweep 1309.2 (1424.0) -> 1309.2 (1423.5) MB, 1587.7 / 0.0 ms  last resort GC in old space requested


<--- JS stacktrace ---> …
Run Code Online (Sandbox Code Playgroud)

node.js webpack angular angular6

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