小编Phu*_*hai的帖子

Javascript /垃圾收集器中的循环引用

有人可以详细解释Javascript引擎如何处理循环引用?浏览器甚至node.js之间有很大的区别吗?

我所说的是对象内部的显式反向/下一个引用.例如:

var objA = {
    prop: "foo",
    next: null
};

var objB = {
    prop: "foo",
    prev: null
};

objA.next = objB;
objB.prev = objA;
Run Code Online (Sandbox Code Playgroud)

我们走了.如果我们这样做,console.log( objA )我们可以看到我们创造了一个无限链.最大的问题是,这是不是很糟糕?未明确清除时是否会造成内存泄漏?

所以我们必须这样做

objA.next = null;
objB.prev = null;
Run Code Online (Sandbox Code Playgroud)

或者垃圾收集者会照顾我们这样的星座吗?

javascript garbage-collection memory-leaks circular-reference

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

两个日期之间的天差

我一直在尝试很多方法来计算两个日期之间的总天数,我的意思是,计算整天.我需要的一个例子:

   START DATE            END DATE          Day Count  

24/02/2010 16:26     24/02/2010 16:26         1  
20/02/2010 18:16     24/02/2010 16:26         5  
31/12/2009 20:00     24/02/2010 16:26         56  
15/07/2009 20:59     24/02/2010 16:26         225  
Run Code Online (Sandbox Code Playgroud)

c# datetime

37
推荐指数
3
解决办法
7万
查看次数

角度'Observable <Event>'上不存在Angular 6 router.events.filter'filter'

我已经完成了将我的应用程序更新为Angular 6(它是在5.2版本中).

我有一个错误语法:

import { Router, ActivatedRoute, NavigationEnd } from '@angular/router';
import { filter } from 'rxjs/operators';
...
constructor(private router: Router) {}

this.router.events.filter
      (event => event instanceof NavigationEnd).subscribe((res) => 
    {
      // DO something
    });
Run Code Online (Sandbox Code Playgroud)

错误TS2339:类型'Observable'上不存在属性'filter'.

Angular 6中的语法是什么?

谢谢

rxjs typescript angular angular6 rxjs6

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

如何减少/消除Angular应用程序中的内存泄漏

我正在优化我的大Angular App.正如我发现一个Google DevTools非常好的检测问题.正如我刚开始学习的那样DevTools,我对内存泄漏感到非常困惑.

当我在我的应用程序中向后移动到不同的页面时,配置文件堆快照大小一次又一次地增加,所以我认为有一些对象没有被GC清理,这就是为什么我的应用程序在一段时间后变慢,所以如何解决这个.请帮忙.

注意

这是我使用DevTools所理解的,如果我错了,请纠正我.其他建议是受欢迎的.

直到现在我用过的东西

  1. AngularOnce指令,可在需要时减少监视.
  2. QuickList指令用快速重复取代ng-repeat.
  3. InView指令,处理大型列表,所以我删除不在视口中的DOM.
  4. 来自ngInfiniteScroll指令的延迟加载方法.

memory-leaks google-chrome-devtools angularjs

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

清洁建筑与洋葱建筑

我一直在阅读洋葱建筑,今天我发现了鲍勃叔叔的清洁建筑.

对于我的生活,我看不出它们之间有任何差异,它们看起来完全相同(除了命名惯例).

这两种建筑风格有什么不同吗?如果是的话,你能解释一下吗?

干杯

architecture onion-architecture clean-architecture

22
推荐指数
3
解决办法
8419
查看次数

WhitespaceTokenizerFactory和StandardTokenizerFactory之间的区别

我是Solr的新手.通过阅读Solr的wiki,我不明白WhitespaceTokenizerFactory和StandardTokenizerFactory之间的区别.他们真正的区别是什么?

solr tokenize

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

自定义反序列化器仅适用于json.NET的某些字段

我正在尝试反序列化一些JSON:

{ 
   "a":1,
   "b":25,
   "c":"1-7",
   "obj1":{ 
      "a1":10,
      "b1":45,
      "c1":60
   },
   "obj2":[ 
      { 
         "a2":100,
         "b2":15,
         "c2":50
      },
      { 
         "e2":"1,2,5-7",
         "f2":"1,3-5",
         "a2":25
      }
   ]
}
Run Code Online (Sandbox Code Playgroud)

我想找到一种方法来定义仅针对某些字段的自定义反序列化.

在下面的代码中,我将需要注意的字段(自定义处理)和可以以某种方式自动完成的字段分开.

是否可以自动反序列化"正常"字段?(不需要任何特定的自定义处理)

[JsonConverter(typeof(ConfigurationSerializer))]
    public class Configuration
    {
        public int a { get; set; }
        public int b { get; set; }
        public Obj1 obj1 { get; set; }

        public int[] c { get; set; }
        public IList<Obj2> obj2 { get; set; }
    }

    public class ConfigurationSerializer : JsonConverter
    {
        public override void WriteJson(JsonWriter writer, object value, …
Run Code Online (Sandbox Code Playgroud)

c# json.net json-deserialization

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

带有GraphQL的EF Core

我正在探索GraphQL开发,我正在探索通过EF Core生成什么样的SQL查询,我发现无论我的GraphQL查询只包含几个字段,EF Core都会为所有字段发送SQL Select.实体.

这是我现在使用的代码:

public class DoctorType : ObjectGraphType<Doctors>
{
    public DoctorType()
    {
            Field(d => d.PrefixTitle);
            Field(d => d.FName);
            Field(d => d.MName);
            Field(d => d.LName);
            Field(d => d.SufixTitle);
            Field(d => d.Image);
            Field(d => d.EGN);
            Field(d => d.Description);
            Field(d => d.UID_Code); 
    }
}

public class Doctors : ApplicationUser
{
    public string Image { get; set; }
    [StringLength(50)]
    public string UID_Code { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我正在使用的查询是

{
  doctors{
    fName
    lName
  }
}
Run Code Online (Sandbox Code Playgroud)

生成的SQL选择Doctor实体的所有字段.

有没有办法进一步优化EF Core生成的SQL查询?

我猜这种情况发生的原因是DoctorType继承ObjectGraphType<Doctors>了医生的某些Projection,而不是来自医生的一些Projection,但我想不出一个聪明的解决方法呢?

有什么建议?

编辑: …

c# entity-framework-core graphql asp.net-core graphql-dotnet

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

如何在使用Xamarin.UITest访问iOS上的照片所需的权限对话框中点击确定按钮?

我正在使用Xamarin.UITest在iOS应用程序上执行自动化.

问题是:在访问图库上传照片时,有一个权限对话框,我需要点击"确定"按钮将其关闭.

以下我试过的方法,但它们没有用:

  • 使用树命令不显示该对话框的层次结构,因此我无法找到要自动化的UI元素

  • 使用 iOSApp.InvokeUia("UIATarget.localTarget().frontMostApp().alert().buttons()[\"OK\"].tap()"); 显示的错误: UIATarget.localTarget().frontMostApp().alert().buttons()["OK"] could not be tapped because the element is not visible tap@[native code]

  • 使用app.TapCoordinate,它似乎能够工作,但必须知道正确的坐标取决于不同的屏幕和对话框出现时.

有没有解决这个问题的方法?谢谢.

ios xamarin

8
推荐指数
2
解决办法
1399
查看次数

Newtonsoft 从 JSON 路径更新 JObject?

我知道使用 select tokens 函数来传递 json 路径。例如:

JObject jObect = JObject.Parse("{some json string}");
JToken jToken = jObject.SelectToken("root.item[0].myProperty"); 
Run Code Online (Sandbox Code Playgroud)

我正在寻找的是一种在给定 JSON 路径上更新原始 JObject 的简单方法?

jObject[jsonPath] = "My New Value" 
Run Code Online (Sandbox Code Playgroud)

显然,这需要一个对象键而不是 JSON 路径。谢谢。

c# json.net jsonpath

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