GVKun编程网logo

延迟加载基于HTTP调用中的数据(API密钥)的角度模块(Segment.com)的最佳方法是什么?

15

如果您想了解延迟加载基于HTTP调用中的数据和API密钥的角度模块的知识,那么本篇文章将是您的不二之选。我们将深入剖析延迟加载基于HTTP调用中的数据的各个方面,并为您解答API密钥的角度模块的疑在这

如果您想了解延迟加载基于HTTP调用中的数据API密钥的角度模块的知识,那么本篇文章将是您的不二之选。我们将深入剖析延迟加载基于HTTP调用中的数据的各个方面,并为您解答API密钥的角度模块的疑在这篇文章中,我们将为您介绍延迟加载基于HTTP调用中的数据的相关知识,同时也会详细的解释API密钥的角度模块的运用方法,并给出实际的案例分析,希望能帮助到您!

本文目录一览:

延迟加载基于HTTP调用中的数据(API密钥)的角度模块(Segment.com)的最佳方法是什么?

延迟加载基于HTTP调用中的数据(API密钥)的角度模块(Segment.com)的最佳方法是什么?

如何解决延迟加载基于HTTP调用中的数据(API密钥)的角度模块(Segment.com)的最佳方法是什么??

我正在尝试基于从http调用中接收到的api实例化分段角度模块

import { browserModule } from ''@angular/platform-browser'';
import { NgModule } from ''@angular/core'';

import { AppComponent } from ''./app.component'';

// Import the Segment module
import { SegmentModule } from ''ngx-segment-analytics'';

@NgModule({
  declarations: [
  AppComponent
],imports: [
browserModule,// Segment Importation
   SegmentModule.forRoot({ apiKey: ''YOUR_WRITE_APIKEY'',debug: true,loadOnInitialization: true 
  })
],providers: [],bootstrap: [AppComponent]
})
export class AppModule { }

我正在尝试从服务中获取''YOUR_WRITE_APIKEY'',。获取数据并将其提供给模块的最佳方法是什么?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

c – 定义一个非常大的数组(查找表)的最佳方法是什么?

c – 定义一个非常大的数组(查找表)的最佳方法是什么?

我必须在代码中定义一个大型数组(查找表).
它包含256个元素,占用近1个电脑屏幕.

有两个函数正在使用此数组.
我想在函数下定义这个数组,所以我可以在开发过程中非常快速地访问它们.

但是如果我尝试在一个文件中执行它,编译器将在函数周围给出“未声明的标识符”错误 – 因为它们使用数组.

所以,我必须将函数和数组放在单独的文件中.

这是我的程序的结构:

main.cpp:

#include "lookup.h"

...uses two functions...

lookup.h:

#ifndef SubMaster_lookup_h
#define SubMaster_lookup_h

void func1(void);
void func2(void);

char LookupTable[][3]={ "00","01","02" "03","04","05","06","07","08","09","0a","0b","0c","0d","0e","0f","00","10","11","12","13",and so on...}

lookup.cpp:

#include "lookup.h"

void func1() {
   ...body of func1...
}

void func2() {
   ...body of func2...
}

以下结构在构建期间为我提供了“ld:重复符号_LookupTable”.
有没有办法改变结构,所以不会出错?

解决方法

两种方式:

>在标头中声明数组并在cpp文件中定义它
>让它静止.但这非常讨厌(每个翻译单位都会得到自己的副本)

试试这个:

lookup.h
extern char LookupTable[][3];

lookup.cpp
#include "lookup.h"

char LookupTable[][3] = ...

这answer很好.

c# – 使用Rx执行延迟采样的最佳方法是什么?

c# – 使用Rx执行延迟采样的最佳方法是什么?

我正在开发一个Xamarin应用程序,我已经扩展了 Connectivity插件以使用Rx而不是事件.

我的目标是在重新建立连接时引入一点延迟,以允许网络适配器有时间连接到互联网(UWP的解决方法).如果在此延迟中出现任何值,则只需保留最后一个值,因为只有当前连接状态很重要.

这很好,但感觉有点hacky:

internal static class ConnectivityExtensions
{
    public static IObservable<bool> ToObservable(this IConnectivity @this)
    {
        var connectivity = Observable
            .FromEventPattern<ConnectivityChangedEventHandler,ConnectivityChangedEventArgs>(
                handler => @this.ConnectivityChanged += handler,handler => @this.ConnectivityChanged -= handler)
            .Select(args => args.EventArgs.IsConnected);

        var sampling = connectivity
            .Timestamp()
            .Select(ts => new
            {
                ts.Value,ts.Timestamp,// If reconnection,delay subscriber notification for 250ms
                DelayUntil = ts.Value ? (DateTimeOffset?)ts.Timestamp.Add(TimeSpan.FromMilliseconds(250)) : null
            })
            .Scan((acc,current) => new
            {
                current.Value,current.Timestamp,// If current notification is during reconnection notification delay period,delay the current notification too
                DelayUntil = current.Timestamp < acc.DelayUntil ? acc.DelayUntil : current.DelayUntil
            })
            // Perform reconnection delay
            .Delay(x => x.DelayUntil.HasValue
                ? Observable.Return(x.DelayUntil.Value).Delay(x.DelayUntil.Value)
                : Observable.Empty<DateTimeOffset>())
            // All delayed notifications are delayed until the same time,so we only need one notification to trigger sampling after delay
            .distinctUntilChanged()
            .Select(_ => Unit.Default);

        return connectivity
            .Sample(sampling)
            .StartWith(@this.IsConnected)
            .distinctUntilChanged()
            .Replay(1)
            .RefCount();
    }
}

示例输出:

通过这个例子,你可以看到我正在做的事情的好处.当“连接”改变时,延迟阻止订户处理数据,但是尚未建立互联网连接(UWP).此外,这还可以保护用户免受任何快速“开/关”通知.

// StartsWith: True
ConnectivityChanged(null,new ConnectivityChangedEventArgs { IsConnected = true });  // Delay 250ms
Thread.Sleep(TimeSpan.FromMilliseconds(250));                                        // Sample: True,Ignored due to distinctUntilChanged
ConnectivityChanged(null,new ConnectivityChangedEventArgs { IsConnected = false }); // Sample: False
Thread.Sleep(TimeSpan.FromMilliseconds(250));
ConnectivityChanged(null,new ConnectivityChangedEventArgs { IsConnected = true });  // Delay 250ms,discarded due to Sample
ConnectivityChanged(null,new ConnectivityChangedEventArgs { IsConnected = false }); // Delayed by prevIoUs,new ConnectivityChangedEventArgs { IsConnected = true });  // Delayed by prevIoUs,new ConnectivityChangedEventArgs { IsConnected = false }); // Delayed by prevIoUs
Thread.Sleep(TimeSpan.FromMilliseconds(250));                                        // Sample: False,Ignored due to distinctUntilChanged

// Final Output:
// True
// False

有没有更优化的方法来实现这种类型的延迟采样?

解决方法

如果我理解正确,这是一个大理石图,说明事情将如何解决:

T (millis)           : 0----250--500--1000-1250-1500-1750-2000
Connectivity         : ---F-------T---F----T-------F--T-------
ScanValueDelayUntil  : ---null----800-null-1500----null2100---
Sampling             : -------------x-----------x-----------x-
ResultSampled        : T------------T-----------T-----------T-
ResultSampleddistinct: T--------------------------------------

这似乎没有多大意义.你能描述一下你希望结果代表什么,或者纠正我错在哪里?

c# – 收集崩溃数据的最佳方法是什么?

c# – 收集崩溃数据的最佳方法是什么?

因此,我试图从程序中自动收集数据的概念出售 – 即弹出一个对话框,要求用户在出现问题时发送报告.

我在MS Visual Studio C#中工作.

从实现的角度来看,在我的主program.cs文件中放置一个try / catch循环是否有意义?像这样:

try
        {
            Application.Run(new myMainForm());
        }
        catch (Exception ex)
        {
            //the code to build the report I want to send and to 
            //pop up the Problem Report form and ask the user to send

        }

或者在整个代码段中放置try / catch循环以捕获更具体的异常类型是否有意义? (我想的不是因为这是一个新的应用程序,并且提出更具体的异常捕获意味着我知道会出现什么问题……我不知道,这就是为什么以上对我来说似乎有意义.)

-Adeena

解决方法

我认为你是对的,你不会知道会出现什么问题,这就是重点.

但是,您可以考虑为ThreadException事件添加处理程序.

上面的代码可以工作,但是有些情况下多线程可能是这些代码的问题,因为并非所有Windows窗体程序中的代码都将在主Application.Run循环线程中运行.

以下是链接文章中的示例代码:

[STAThread]
static void Main() 
{
   System.Windows.Forms.Application.ThreadException += new ThreadExceptionEventHandler(ReportError);
   System.Windows.Forms.Application.Run(new MainForm());
}

private static void ReportError(object sender,ThreadExceptionEventArgs e)
{
   using (ReportErrorDialog errorDlg = new ReportErrorDialog(e.Exception))
   {
    errorDlg.ShowDialog();
   }
}

更多文档on MSDN.

在一个小问题上,使用ThreadException事件还允许主消息循环继续运行,以防异常不是致命的(即容错方案),而try / catch方法可能要求您重新启动主消息循环,这可能引起副作用.

html – 唯一标识DOM节点的最佳方法是什么?

html – 唯一标识DOM节点的最佳方法是什么?

有什么方法可以唯一标识 HTML文档中的所有DOM节点.为了说明我的意思,这是一个(虚构的)例子:

>脚本X从document.html中随机选择一个DOM节点.
>脚本X需要告诉脚本Y它选择了哪个DOM节点.
>脚本X如何唯一地标识它所选择的DOM节点,以便脚本Y确切地知道它在document.html中的哪个节点?

我真的很感兴趣如何唯一地识别DOM节点,以便脚本Y可以识别它并操纵它.优选地,它也应该与文本节点一起工作.我可能正在考虑XPath,但我不确定如何为任何给定节点生成唯一的XPath.

解决方法

您应该能够通过从节点向后节点向后工作来确定一个唯一的XPath,并跟踪您所在的节点以及它的兄弟节点,这样您就可以获得如下内容:
/a[1]/b[2]/c[101]/text()

这是第二个B节点下的第101个C节点,等等.因此,这是一个唯一的路径,可以参考原始文件复制

关于延迟加载基于HTTP调用中的数据API密钥的角度模块的问题我们已经讲解完毕,感谢您的阅读,如果还想了解更多关于c – 定义一个非常大的数组(查找表)的最佳方法是什么?、c# – 使用Rx执行延迟采样的最佳方法是什么?、c# – 收集崩溃数据的最佳方法是什么?、html – 唯一标识DOM节点的最佳方法是什么?等相关内容,可以在本站寻找。

本文标签: