小编Bv2*_*202的帖子

配置注释错误:参数'fn'不是函数,得到字符串

除了一些文件之外,我在各地都使用了注释(在控制器,服务......中).由于我遇到了缩小问题,我正在重写最后几个文件.

这是我目前的配置:

(function () {

    angular.module('app')
        .config(function ($stateProvider, $urlRouterProvider, $provide, $httpProvider, showErrorsConfigProvider, LightboxProvider) {
            $httpProvider.interceptors.push('requestsErrorHandler');
            $urlRouterProvider.otherwise('/');
            showErrorsConfigProvider.showSuccess(true);

            // more code
            // routing and stuff...


        });

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

这很好用.我现在正试图用注释重写这个:

(function () {

    angular.module('app')
        .config('configurationapp', configurationapp);

    configurationapp.$inject = ['$stateProvider', '$urlRouterProvider', '$provide', '$httpProvider', 'showErrorsConfigProvider', 'LightboxProvider'];

    function configurationapp($stateProvider, $urlRouterProvider, $provide, $httpProvider, showErrorsConfigProvider, LightboxProvider) {
            $httpProvider.interceptors.push('requestsErrorHandler');
            $urlRouterProvider.otherwise('/');
            showErrorsConfigProvider.showSuccess(true);


            // more code
            // routing and stuff


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

但是,我收到此错误:

Uncaught Error: [$injector:modulerr] Failed to instantiate module app due to:
Error: [ng:areq] Argument 'fn' is not a function, …
Run Code Online (Sandbox Code Playgroud)

javascript dependency-injection angularjs

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

用正则表达式链接替换iframe

我目前有这个字符串:

"<p><iframe allowfullscreen="" class="media-element file-default" data-fid="2219" data-media-element="1" frameborder="0" height="360" src="https://www.youtube.com/embed/sNEJOm4hSaw?feature=oembed" width="640"></iframe></p>"
Run Code Online (Sandbox Code Playgroud)

我想删除整个iframe元素(<iframe>...</iframe>),并用<a>指向该src属性中url 的链接替换它:

<p><a href="https://www.youtube.com/embed/sNEJOm4hSaw?feature=oembed">Link to youtube</a></p>
Run Code Online (Sandbox Code Playgroud)

目前,我有这个正则表达式:

$res = preg_replace('/src="(.+?)"/', '/<a href="$1">Link to youtube</a>/', $str);
Run Code Online (Sandbox Code Playgroud)

使用此正则表达式,我可以src用一个a元素替换该属性。但是,我想替换整个iframe元素。

最简单的方法是什么?

php regex

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

使用GET时获取正确的URL

单击按钮时,我希望我的URL成为:

users.php?action=search&formvar1=value&formvar2=value&...
Run Code Online (Sandbox Code Playgroud)

这就是我尝试过的:

<form id="search" action="users.php?action=search" method="get">
Run Code Online (Sandbox Code Playgroud)

但这似乎不起作用(它不添加动作=搜索部分).有没有办法做到这一点?我知道它在使用POST而不是GET时有效,所以为什么不在这里呢?

谢谢

html php forms

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

检查字符串是否为哈希值

我正在使用SHA-512来哈希我的密码(使用盐).我不认为我想要的是可能的,但无论如何我们都要问.

有没有办法检查字符串是否已经是SHA-512(或其他算法)哈希?

当用户登录时,我想检查他的密码.如果它仍然是纯文本,它应该转换为安全的形式.

php security passwords sha

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

从服务退出

我目前正以这种方式使用用户名和密码登录:

var client = new ServiceReference.CalcServiceClient();
client.ClientCredentials.UserName.UserName = "test";
client.ClientCredentials.UserName.Password = "test";
client.DoWork();
Run Code Online (Sandbox Code Playgroud)

这很好用.现在,我想添加一种注销方式(用户按下按钮,应该以某种方式发送注销请求).

这是可能的,如果是这样,那么实现这个的最佳方法是什么?

c# wcf

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

ngFor:在ng-container中循环时,奇数/偶数行的颜色不同

我有一张桌子,我想在其中为奇数行和偶数行提供不同的背景色。通常,您可以为此使用odd和even变量。但是,我现在在内建立表行,ng-container这样我可以有条件地在每次迭代中创建一个或多个行。在这种情况下,每次迭代都会根据变量创建1或2行。

<ng-container *ngFor="let detailof data.details; let odd = odd;">
    <tr [ngClass]="{ 'k-alt': odd}">
        <td>
            {{ detail.number1 }}
        </td>
        <td>
            {{ detail.number2 }}
        </td>
        <td>
            {{ detail.number3 }}
        </td>
    </tr>

    <tr *ngIf="detail.conditionalVariable" [ngClass]="{ 'k-alt': odd}">
        <td></td>
        <td>{{ detail.conditionalVariable }}</td>
        <td></td>

    </tr>
</ng-container>
Run Code Online (Sandbox Code Playgroud)

如您所见,每次迭代都会使行被标记为不同的背景,而不是每行本身都被标记,因为*ngFor在ng-container元素中的声明了奇数变量。

ng-container与条件行一起使用时,是否可以为每一行赋予不同的背景色?

angular

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

在多个方法调用上使用asyc/await/task

我一直在尝试理解async/await以确保在从数据库加载内容时UI不会阻塞.这是我到目前为止所做的,但它根本不起作用:

VM:

public LoadingViewModel(IRoleService roleService)
{
    RoleService = roleService;
    StartLoading();
}

private IEnumerable<Role> StartLoading()
{
    Roles = RoleService.GetAllRoles();
}
Run Code Online (Sandbox Code Playgroud)

RoleService:

public IEnumerable<Role> GetAllRoles()
{
    return Repository.GetAll<Role>().Result;
}
Run Code Online (Sandbox Code Playgroud)

库:

public async Task<IQueryable<T>> GetAll<T>() where T : class
{
    return await Task.Run(() => Context.Set<T>());
}
Run Code Online (Sandbox Code Playgroud)

我认为这可行,但显然它不会因为UI仍然挂起.我确实通过在RoleService中创建另一个任务来实现它,但我不认为你应该做更多的任务......

我已经尝试了一段时间,我已经阅读了很多关于它的内容,但我只是不明白.

有人可以解释为什么这不起作用,我怎么能真正让它工作?

编辑:看了答案后,我现在有了这个,但它仍然无效.我稍后会看一下构造函数问题.

VM:

public LoadingViewModel(IRoleService roleService)
{
    RoleService = roleService;

    //change this later
    var roles = StartLoading();
}

private async Task<IEnumerable<Role>> StartLoading()
{
    var roles = await RoleService.GetAllRolesAsync();

    foreach (var role in roles)
    {
        Console.WriteLine(role.Name); …
Run Code Online (Sandbox Code Playgroud)

c# asynchronous async-await

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