小编Vin*_*oft的帖子

Angular Flex布局:响应式布局,结合了行和列

我正在学习flex-layout,我正在尝试创建一个响应式UI。我在引导网格系统方面有多年的经验,但似乎无法理解如何完成以下工作(实时演示):

在大型显示器上: 在此处输入图片说明

在中型显示器上: 在此处输入图片说明

在移动:

在此处输入图片说明

如果我理解正确的话,我必须使用的组合rowscolumns,如下面的代码

    <div class="container" fxLayout="row" fxLayout.xs="column" fxLayoutWrap fxLayoutGap="0.5%" fxLayoutAlign="center">
      <div fxFlex="25%"> ..code left out..</div>
      <div fxFlex="25%"> ..code left out..</div>
      <div fxFlex="25%"> ..code left out..</div>
      <div fxFlex="25%"> ..code left out..</div>
   </div>
Run Code Online (Sandbox Code Playgroud)

在小屏幕上,布局从更改rowcolumn,这意味着我已经为大型和移动显示器实现了上面的UI示例。

问题:如何为中型监视器实现UI(请参见上图)?我不明白如何结合rowcolumn

html css flexbox angular-flex-layout

7
推荐指数
2
解决办法
6232
查看次数

AWS 云信息 | 配置 Lambda 以使用 S3 存储桶中最新版本的代码

我在 AWS 上使用 codepipeline、codebuild 和 cloudformation。

我的流程是:

  1. 将提交推送到 github,这会触发 codepipeline
  2. Codebuild 将 lambda 函数上传(压缩)到 S3 存储桶
  3. Cloudformation 配置 lambda 函数

云信息(简化):

CreateDoctorLambda:
    Type: AWS::Lambda::Function
    Properties:
      Runtime: python3.6
      Handler: lambda_function.lambda_handler
      Role:
        Fn::GetAtt:
          - LambdaExecutionRole
          - Arn
      Code:
          S3Bucket: !Ref LambdaFunctionS3Bucket
          S3Key: CreateDoctor.zip
          S3ObjectVersion: Latest <-- This value is invalid
Run Code Online (Sandbox Code Playgroud)

问题:当我更新 lambda 函数的代码时(此新代码在代码构建期间被压缩并上传到 S3 存储桶),更改不会部署到现有的 lambda 函数。

根据AWS 文档

要更新源代码位于 Amazon S3 存储桶中的 Lambda 函数,您必须通过更新 S3Bucket、S3Key 或 S3ObjectVersion 属性来触发更新。单独更新源代码并不会更新功能。

问题:有没有办法告诉Cloudformation使用S3中存储的最新版本的代码?使用S3ObjectVersion: Latest会导致错误。

amazon-s3 amazon-web-services aws-cloudformation aws-lambda

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

颤动| 如何监听导航事件?

在Flutter中,有什么方法可以监听导航的变化吗?

示例:导航在以下位置触发Widget A

Navigator.of(context).pushNamed('/chat');
Run Code Online (Sandbox Code Playgroud)

当执行上面的代码时,我希望在 的子级中触发一个事件Widget A。这可能吗?

flutter

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

Angular2:setTimeout只调用一次

我正在Angular2中实现需要使用的功能setTimeout.

我的代码:

  public ngAfterViewInit(): void {
    this.authenticate_loop();
  }

  private authenticate_loop() {
    setTimeout (() => {
      console.log("Hello from setTimeout");
    }, 500)
  }
Run Code Online (Sandbox Code Playgroud)

setTimeout启动ngAfterViewInit但循环只执行一次,例如."Hello fromsetTimeout"只打印一次.

问题:如何更改代码以使setTimeout有效?

javascript settimeout typescript angular

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

将tesseract训练为一种特定字体

我正在使用tesseract从屏幕刮板应用程序中获取OCR文本.使用的唯一字体是Segoe UI 8 CLEARTYPE QUALITY(见下图).此时,tesseract做得很差,混合了Z和2,0和o等等.

我试图扩大文本图像(没有改进).看看eng.traineddata我可以看到tesseract没有用Segoe UI 8 CLEARTYPE QUALITY训练.

问题:如何使用新字体训练tesseract 指定只应使用该字体?

在此输入图像描述

ocr tesseract

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

颤动| 如何知道小部件是否位于导航堆栈顶部(可见)

在我的 Flutter 应用程序中,如果将新页面推送到导航堆栈,我希望暂停动画。

问题:从小部件的角度来看,有没有办法知道小部件是否位于导航堆栈的顶部?

例子:

while (isTopOfNavigationStack) {
    // Do the animation
}
Run Code Online (Sandbox Code Playgroud)

编辑1:更多细节

我使用库widget_marquee来创建水平滚动条。在将新页面推送到导航堆栈之前,该库一直运行良好。发生这种情况时,while-loop变得无限并且应用程序冻结。

library widget_marquee;

import 'dart:developer';
import 'package:flutter/material.dart';

/// Rotates the [child] widget indefinitely along the horizontal axis if the
/// content extends pass the edge of the render area.
///
/// [delayDuration] - One time delay to wait before starting the text rotation
/// [gap] - Spacing to add between widget end and start
/// [loopDuration] - Time for one full …
Run Code Online (Sandbox Code Playgroud)

flutter flutter-animation flutter-navigation

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

Python:在多线程应用程序中为每个线程打印到单独的 bash 行

我在这篇文章中看到,很容易通过以下方式在同一行上打印(覆盖以前的内容):

print "Downloading " + str(a) " file of " + str(total),
Run Code Online (Sandbox Code Playgroud)

(注意末尾的逗号)。这会导致

>>> Downloading 1 file of 20
Run Code Online (Sandbox Code Playgroud)

每次执行打印时,都会更新同一行。

这在单线程应用程序中效果很好,但不适用于多线程。

在 python 2.7 中,多个线程如何在终端中打印到自己的行?

期望的结果看起来像这样:

>>> Thread 1: Downloading 11 file of 20
>>> Thread 2: Downloading 4 file of 87
>>> Thread 3: Downloading 27 file of 32
>>> Thread 4: Downloading 9 file of 21
Run Code Online (Sandbox Code Playgroud)

python multithreading

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

Wordpress 和 Nginx 与 Docker:未加载静态文件

我正在使用 Docker 来为我的简单 WordPress 网站提供服务。一个 nginx 容器和一个 wordpress 容器。简单设置:

upstream wordpress_english {
  server wordpress_en:80;
}

server {
  listen 80;
  server_name my_domain.com www.my_domain.com;

  location / {
        proxy_pass http://wordpress_english;
    }
}
Run Code Online (Sandbox Code Playgroud)

问题:静态文件(css、js 和图像)未加载。

浏览器控制台的输出显示 404:

http://wordpress_english/wp-content/themes/twentyfifteen/genericons/genericons.css?ver=3.2
Run Code Online (Sandbox Code Playgroud)

很容易发现问题:浏览器在 wordpress_english(nginx 上游名称)查找静态文件,而不是my_domain.com

我该如何解决这个问题?

wordpress nginx docker

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

Angular 2:FormGroup:如何显示自定义错误消息

我正在使用 Angular4 构建前端。如果用户提交了错误的表单,则应显示错误消息。

目前,我的错误处理如下所示:

// This code is run when a response from the server is received
if ('error' in server_response) {
    for (let key in server_response.error {
      this.form.controls[key].setErrors({'error': true});
      let error_message_from_server = server_response.error[key];
    }
}
Run Code Online (Sandbox Code Playgroud)

我如何在 HTML 中显示错误:

<span class="error" *ngIf="field.invalid">Error: {{field.errors.error}} <br></span>
Run Code Online (Sandbox Code Playgroud)

目前field.invalid当收到错误时变为真,但field.errors.error在空字符串中。

问题:如何设置field.errors.error消息?这个消息应该是字符串error_message_from_server

请注意,不能通过在 HTML 代码中使用 if 语句来解决此问题。潜在错误的数量以数百计。

forms angular

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

JavaScript 日期 | 将日期设置为一年中的最后一秒

在 javascript 中,我有一个具有以下值的 Date 对象:

Thu Jan 01 1998 00:00:00 GMT+0100 (Central European Standard Time)
Run Code Online (Sandbox Code Playgroud)

年份可以是任何东西,但日期和时间总是Jan 01 00:00:00

问题:如何将日期设置为所选年份的最后一秒?在这个例子中:Dec 31 1998 23:59:59 GMT+0100 (Central European Standard Time)

javascript date

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