小编Tan*_*han的帖子

SwiftUI:检测 NavigationView 后退按钮按下

当我在此代码SwiftUI中时,我找不到一种方法来检测用户何时点击导航视图的默认后退按钮DetailView1

struct RootView: View {
    @State private var showDetails: Bool = false
    var body: some View {
        NavigationView {
            VStack {
                NavigationLink(destination: DetailView1(), isActive: $showDetails) {
                    Text("show DetailView1")
                }
            }
            .navigationBarTitle("RootView")
        }
    }
}

struct DetailView1: View {
    @State private var showDetails: Bool = false
    var body: some View {
        NavigationLink(destination: DetailView2(), isActive: $showDetails) {
            Text("show DetailView2")
        }
        .navigationBarTitle("DetailView1")
    }
}

struct DetailView2: View {
    var body: some View {
        Text("")
            .navigationBarTitle("DetailView2")
    }
}

Run Code Online (Sandbox Code Playgroud)

使用.onDisappear …

ios swift swiftui

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

有没有办法通过邮递员将文件上传到 GraphQL API?

目前我正在使用 Altair 将文件(在我的情况下仅用于图像)上传到我的 GraphQL API。但是,我所有的其他路由都存储在邮递员中,如果我可以只使用一个应用程序(邮递员)来处理所有事情,那就太好了。

在 Altair 中,我可以简单地选择一个图像并将其存储为一个变量,我将其作为 GraphQL 上传字段的值。

有谁知道 Postman 是否支持该(或类似的)功能?

谢谢!

upload file postman graphql altair

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

应用程序在前台时如何计算应用程序使用时间?

我正在开发一个用于跟踪日常应用使用情况的 android 应用。这个想法是用户可以为任何应用程序设置每日时间限制,并且在超过限制后最多 2 分钟内会出现通知。(延迟的原因:我已经使用AlarmManager类创建了一个警报系统,该类将每分钟关闭一次以运行JobIntentService,它将检查是否超出了任何应用程序的限制)

我用queryEvents的方法UsageStatsManager类来计算应用程式使用时间。

这是我计算应用程序使用时间的代码(我遵循了如何使用 queryEvents):

HashMap<String, Integer> getTimeSpent(Context context, String packageName, long beginTime, long endTime) {
    UsageEvents.Event currentEvent;
    List<UsageEvents.Event> allEvents = new ArrayList<>();
    HashMap<String, Integer> appUsageMap = new HashMap<>();

    UsageStatsManager usageStatsManager = (UsageStatsManager)context.getSystemService(Context.USAGE_STATS_SERVICE);
    UsageEvents usageEvents = usageStatsManager.queryEvents(beginTime, endTime);

    while (usageEvents.hasNextEvent()) {
        currentEvent = new UsageEvents.Event();
        usageEvents.getNextEvent(currentEvent);
        if(currentEvent.getPackageName().equals(packageName) || packageName == null) {
            if (currentEvent.getEventType() == UsageEvents.Event.ACTIVITY_RESUMED
                    || currentEvent.getEventType() == UsageEvents.Event.ACTIVITY_PAUSED) {
                allEvents.add(currentEvent);
                String key = currentEvent.getPackageName();
                if …
Run Code Online (Sandbox Code Playgroud)

android usagestatsmanager

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

无法在 deno 中加载某些模块

我刚刚开始学习 deno,我已经遇到了“类似 bug”的问题。

当我将 Oak 模块导入我的 deno 应用程序时,它编译成功;但是当我加载 mongo 或 bcrypt 时,它崩溃并显示此错误。

error: The system cannot find the path specified. (os error 3)

export { Application, Router } from "https://deno.land/x/oak/mod.ts";
export { init, mongoClient } from "https://deno.land/x/mongo/mod.ts";
Run Code Online (Sandbox Code Playgroud)

这里第一行正确执行,但第二行抛出错误。

javascript deno

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

每次在 ReactJs 中重新渲染组件时都会重置实例变量

我创建了一个功能组件并在其中声明了一些变量。

const Foo = (props) => {
  let instanceVariable = null;

  const selectValue = (value) => {
    instanceVariable = value;
  }

  const proccessVariable = () => {
   // Use instanceVariable and do some task
  }

  return(
    <SelectionOption onChange={selectValue} />
  );
}
Run Code Online (Sandbox Code Playgroud)

我观察到,每当 的父组件Foo重新渲染或有时Foo本身重新渲染instanceVariable设置回null. 而不是这个,我想保存selectedValueinit 并稍后在proccessVariable()方法上处理它。

如果我设置instanceVariablestate它会工作并且不需要状态来保存选定的值。

我知道useEffect(()=>{}, [])只运行一次,但如何在那里声明instanceVariable并在其他函数中使用它。

你能告诉我我做错了什么吗?

reactjs

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

将取消按钮添加到 Javascript 警报

这是我的 Javascript 警报:

<script>
function showMessage() {
    setTimeout(function() {
alert("alert");
}, 100);
}
</script>
Run Code Online (Sandbox Code Playgroud)

当用户访问一个页面时,会弹出一个窗口,上面写着“警报”,它只有“确定”按钮。单击它时,窗口消失并显示其下的页面。如何添加具有相同效果的“取消”按钮?

html javascript

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