小编dkn*_*ack的帖子

Flutter 通过 Widget 检测 PointerEvents

我有一个示例代码,可以检测悬停在小部件上的手写笔。

代码来自这个 Stackoverflow Question

简而言之。GestureBinding.instance?.pointerRouter.addGlobalRoute如果事件属于手写笔类型,它会使用绑定并检查处理程序。当手写笔悬停在屏幕上(无接触)时会触发此操作。

它在诸如等小部件上效果很好Text()Container()

问题:

我想在不同的 Widget(Flutter)上使用此功能,InAppWebView但直到笔与表面接触后才会触发该事件。即使在容器上它也不起作用,如果孩子是InAppWebView.

我认为这个问题在其他 Widget 上也会出现。

我尝试了Listener,AbsorbPointerIgnorePointer.

更新1:

当我开始将触控笔悬停在屏幕上时,我可以在调试输出中看到以下内容。

I/ViewRootImpl(23491): updatePointerIcon pointerType = 20001, calling pid = 23491
D/InputManager(23491): setPointerIconType iconId = 20001, callingPid = 23491
Run Code Online (Sandbox Code Playgroud)

更新2:

InAppWebView 有一个useHybridComposition默认false选项。设置一下即可true解决问题。但是 WebView 变得非常慢。

这是显示问题的存储库。

谢谢!

flutter flutter-layout flutter-inappwebview

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

自定义模型绑定器不验证模型

我开始玩knockout.js并且这样做我使用了FromJsonAttribute(由Steve Sanderson创建).我遇到了自定义属性未执行模型验证的问题.我把一个简单的例子放在一起 - 我知道它看起来像很多代码 - 但基本问题是如何强制在自定义模型绑定器中验证模型.

using System.ComponentModel.DataAnnotations;

namespace BindingExamples.Models
{
    public class Widget
    {
        [Required]
        public string Name { get; set; }
    }
}
Run Code Online (Sandbox Code Playgroud)

这是我的控制器:

using System;
using System.Web.Mvc;
using BindingExamples.Models;

namespace BindingExamples.Controllers
{
    public class WidgetController : Controller
    {

        public ActionResult Index()
        {
            return View();
        }

        [HttpPost]
        public ActionResult Index(Widget w)
        {
            if(this.ModelState.IsValid)
            {
                TempData["message"] = String.Format("Thanks for inserting {0}", w.Name);
                return RedirectToAction("Confirmation");
            }
            return View(w);
        }

        [HttpPost]
        public ActionResult PostJson([koListEditor.FromJson] Widget w)
        {
            //the ModelState.IsValid even though …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc json custom-model-binder data-annotations

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

Asp.NET MVC ModelBinder,获取Action Method

我有一个自定义的ModelBinder,我想得到行动.因为我想使用反射来获取动作的属性,所以动作名称是不够的.

我的行动方法:

[MyAttribute]
public ActionResult Index([ModelBinder(typeof(MyModelBinder))] MyModel model)
{
}
Run Code Online (Sandbox Code Playgroud)

这里通常是ModelBinder

public class MyModelBinder : IModelBinder
{
    public object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext) 
    {
        // here i would like to get the action method and his "MyAttribute"
    }
}
Run Code Online (Sandbox Code Playgroud)

任何建议,其他解决方案?

提前谢谢了

asp.net-mvc asp.net-mvc-3 asp.net-mvc-2

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

KnockoutJS - 更新ViewModel/Mapping插件

如何更新完整的viewModel?

  1. 在页面加载时,我得到一个模型并将其转换ko.mapping.fromJS(myObject)为viewModel.
  2. 如果用户单击按钮,我想从服务器获取更新的数据
  3. 现在我想应用theese更新

如果我使用ko.applyBindings(viewModel);它完美更新ui.但它再次增加了相同的事件.因此,如果用户单击该按钮,则会触发事件两次,第三次,依此类推.

更新完整viewModel的好方法是什么.也许我删除绑定并再次应用它们?(这该怎么做).

样品

var viewModel;

function update() 
{
    $.ajax({
        url: '...',
        type: "GET",
        statusCode: {
            200: function (data) {
                 viewModel = ko.mapping.fromJS(data);
                 ko.applyBindings(viewModel);
            }
        }
    });    
}

// first call after page load
update();

// user click
$("#myButton").click(function() {
    update(); 
});
Run Code Online (Sandbox Code Playgroud)

更新

Steve Greatrex您可以发布自定义绑定实现吗?

ko.bindingHandlers.domBinding = {
    init: function (element, valueAccessor, allBindingsAccessor, viewModel) {
        viewModel.domElement = element;
    },
    update: function (element, valueAccessor, allBindingsAccessor, viewModel) {
        viewModel.domElement = element;
    },
};
Run Code Online (Sandbox Code Playgroud)

javascript knockout-mapping-plugin knockout.js

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

在Mac或Windows上运行.NET Core Console应用程序

我已经创建了一个.net核心控制台应用程序.我想构建应用程序,以便我可以在Windows或Mac上执行它,而无需在网络上安装dotnet核心.所以我需要例如windows for exe.

我已阅读https://docs.microsoft.com/de-de/dotnet/articles/core/tools/dotnet-publish,我知道如何为不同的平台编译应用程序.

但是没有创建可执行文件.我在这里缺少什么以及如何实现我的目标?

c# windows macos .net-core

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

使用AWS Load Balancer保护Web Socket(wss)

我有一个包含Web套接字服务器的小nodejs应用程序.该应用程序托管在ecs容器内,因此它基本上是在ec2实例上运行的docker镜像.

Web套接字按预期工作ws://.我为此使用端口5000.

为了在我的SSL安全网站(https)上使用它,我需要使用安全的Web套接字连接wss://.

存档我已经在aws上创建了一个证书(之前很多次),并且在我创建了一个负载均衡器之后.

我尝试了一个应用程序负载均衡器,一个网络负载均衡器和经典的负载均衡器(上一代).

我在StackOverflow上阅读了一些答案,并按照说明以及使用谷歌找到的一些教程.

我尝试了很多没有成功.当然,这需要花费很多时间,因为创建负载均衡器和其他资源需要相当多的时间.

我如何在指向我的实例的aws上创建一个负载均衡器wss://.有人可以提供一个例子或说明吗?

amazon-ec2 amazon-web-services elastic-load-balancer

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

PostgreSQL - RLS UPDATE 和 SELECT 策略的软删除问题

我知道问题是什么(如下)并有解决方法,但我想摆脱它。

我想对 my_table 实现软删除。

问题是,如果我跑步,UPDATE "my_table" set delete_at = now() where id = ... 我会得到new row violates row-level security policy for table

插入和删除(真正的删除)工作正常,所以我在这里跳过这个。

-- create table
CREATE TABLE "my_table" (
  "id" SERIAL PRIMARY KEY
  "user_id" int not null references "user"(id) on delete cascade,
  deleted_at timestamp with time zone
);

-- enable row level security
ALTER TABLE "my_table" ENABLE ROW LEVEL SECURITY;

-- allow read own data and everything for admin
CREATE POLICY my_table_read_policy ON "my_table" FOR SELECT …
Run Code Online (Sandbox Code Playgroud)

sql postgresql

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

转换ajax中的传统帖子

假设我有一个表格:

<form id="myForm" method="POST" action="/something/somewhere">
   <input type="text" name="textField" />
   <input type="submit" name="foo" value="bar" />
</form>
Run Code Online (Sandbox Code Playgroud)

/something/somewhere操作不会返回完整的html页面,只会返回一个片段.

我想让提交按钮执行其发布工作,但抓住这篇文章的结果并将其注入DOM中的某个位置.

jQuery submit发生实际提交表单之前.它如何工作的例子是:

$('#myForm').posted(function(result)
{
    $('#someDiv').html(result);
});
Run Code Online (Sandbox Code Playgroud)

有什么办法吗?

javascript asp.net ajax asp.net-mvc jquery

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

带有Typescript的NodeJS的REST客户端

我正在开发一个nodejs web应用程序(快递),并想打电话给我的api.

我尝试了一堆包括restangular和jquery ajax调用.

什么是可用的Typescript定义的好的休息客户端库?

node.js express typescript

5
推荐指数
2
解决办法
6977
查看次数

没有依赖关系的简单字符串加密

我需要一个简单的算法来加密/解密字符串.像Base64这样的东西,但更安全一点.这不是关键任务.我只需要一些字符串操作.不像复制字符串那么容易,并且使用简单的base 64解码器使其可读.

为什么不使用AES?

由于我的应用程序是使用.NET Core创建的,因此它可以在Windows和Mac上运行.我面临的问题是,为了System.Security在mac 上使用,我需要安装openssl.由于我没有sudo访问权限,我无法安装它.

所以这是要求:

  • 简单的字符串加密
  • 没有依赖性 System.Security.*

我已经读过C#的简单不安全的双向"混淆",但没有依赖的解决方案.

c#

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