小编Łuk*_*iak的帖子

删除未使用的Angular模块依赖项(导入和提供程序)

假设我有SharedComponents模块。在此模块中有一个SomeView组件。此组件使用的指令SomeDirectiveDirectivesModule。我有这样的事情:

@NgModule({
  imports: [DirectivesModule, ...],
  declarations: [SomeView, ...],
  ...
})
Run Code Online (Sandbox Code Playgroud)

然后,我需要SomeView转到其他模块。这给我留下了:

@NgModule({
  imports: [DirectivesModule, ...],
  declarations: [...],
  ...
})
Run Code Online (Sandbox Code Playgroud)

没有其他声明的元素使用DirectivesModule。不再需要它,因此我想将其删除。但是我不能说不研究其他声明就可以安全删除。

所以我的问题是:有没有办法找到给定的模块导入或提供程序是否可以安全删除?在我正在从事的项目中,一个模块可以加载20个其他模块,保持其清洁确实是一项艰巨的任务。

module typescript angular

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

Laravel 范围与联合

我需要一种方法按两列对模型进行排序(但不是按 x、y 排序)。我有一个priority列可以“提升”结果中的模型,并且在未设置created_at时应该作为排序键的标准。priority我发现做到这一点的唯一方法是与工会合作。

通过这样的查询:

(SELECT * FROM `charts` WHERE priority IS NOT NULL ORDER BY priority ASC) 
UNION (SELECT * FROM `charts` WHERE priority IS NULL AND created_at IS NOT NULL ORDER BY CREATED_AT ASC) 
UNION (SELECT * FROM `charts` WHERE created_at IS NULL)
Run Code Online (Sandbox Code Playgroud)

所以我尝试做类似的事情:

public function scopeSortPriority($query)
{
    return $query->whereNotNull('priority')
        ->orderBy('priority')
        ->union($query->whereNull('priority')
            ->whereNotNull('created_at')
            ->orderBy('created_at'))
        ->union($query->whereNull('priority')
            ->whereNull('created_at'));
}
Run Code Online (Sandbox Code Playgroud)

但遗憾的是它不起作用。

还有其他方法可以在 SQL 中完成我想要的事情吗?否则 - 我应该如何重建这个范围以使其发挥作用?

php sql laravel eloquent

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

标签 统计

angular ×1

eloquent ×1

laravel ×1

module ×1

php ×1

sql ×1

typescript ×1