小编Jam*_*mes的帖子

for循环和php中的每个循环有什么区别

PHP中for循环和foreach循环之间有什么区别?

php

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

Python tkinter屏幕宽度和高度辅助显示

我有一个双显示器设置(笔记本电脑屏幕和外部显示器).我的笔记本电脑屏幕是我的主显示屏,外接显示器是次要的 两者都有不同的屏幕尺寸.

在我的python tkinter脚本中,我使用winfo_screenwidth()winfo_screenheight()检测屏幕宽度和高度,以便我可以将根窗口设置为全屏.

通常,当我运行我的脚本时,根窗口将是我的笔记本电脑屏幕的大小.当我将窗口移动到扩展显示器时,我希望它自动调整宽度和高度以匹配外部显示器的宽度和高度.

这可能吗?有没有办法检查根窗口是在主显示器还是辅助显示器?

winfo_screenwidth()检测二次显示器的宽度和高度?

编辑:我使用的是Windows XP Pro 32位和Python 2.7.

python tkinter

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

如何阻止 Visual Studio Code (VSCode) 对新的未保存文件进行 linting?

在 Visual Studio Code (VSCode) 中,我经常想在编码时临时存储一些文本。执行此操作的快速方法是按 Ctrl + N(在新选项卡中打开新文件),然后按 Ctrl + V(粘贴文本)。然后我可以稍后返回新选项卡并检索文本。这比使用剪贴板更安全,因为我不想因为复制其他内容而意外地将其吹走。

然而,VSCode 的 ESLint 扩展会自动检测到我已将一些 JavaScript 代码粘贴到新文件中,并立即开始对其进行 linting,即使它是一个全新且未保存的文件。这会使“问题”窗格中出现虚假错误。

我该如何防止这种情况发生?

eslint visual-studio-code

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

如何告诉 SentryWebpackPlugin 我的源映射的名称?

1) 我的网页代码是用 TypeScript 编写的,我使用 WebPack 将其捆绑到最终用户的“main.min.js”文件中。(非常标准的东西。)

2) 我想利用Sentry.io服务自动向云端报告错误,因此我安装了该@sentry/browser包并在我的 TypeScript 代码库中对其进行了初始化。到目前为止一切顺利 - 我的网页成功向 Sentry 报告错误。

3) 然而,报告的错误不包含真实的行号,例如源映射。为了解决这个问题,Sentry 文档说您需要使用SentryWebpackPlugin. 所以,我已经安装了它,并将我的 WebPack 配置更改为以下内容:

import SentryWebpackPlugin from '@sentry/webpack-plugin';
import * as path from 'path';
import * as webpack from 'webpack';

// Constants
const epoch = new Date().getTime();

const config: webpack.Configuration = {
    // The entry file to bundle
    entry: path.join(__dirname, 'src', 'main.ts'),

    // Where to put the bundled file
    output: {
        path: __dirname, // By default, …
Run Code Online (Sandbox Code Playgroud)

sentry typescript webpack

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

在 monorepo 中如何使用 tsconfig.json“types”字段?

第 1 部分 - 使用“类型”字段的示例

TypeScript 库 A除了“正常”导出之外还提供类型定义,如下所示:

declare global {
  function someGlobalFunction(): void;
}
Run Code Online (Sandbox Code Playgroud)

库 B 使用库 A 的类型定义。因此,在库 B 的 tsconfig.json 中,我们输入:

"types": ["library-a"],
Run Code Online (Sandbox Code Playgroud)
  • 通过这样做,使用someGlobalFunction不再导致编译器错误。
  • 显然,这需要将“library-a”列为库 B 的 package.json 中的依赖项。
  • 显然,它还要求“library-a”已安装并在“node_modules”子目录中可用。

第 2 部分 - Monorepo

我有一个 TypeScript monorepo。(它使用 NX 作为 monorepo 工具,使用 Yarn 作为包管理器,但这可能并不重要,因为这个问题适用于任何类型的 TypeScript monorepo。)

如果库 A 和库 B 都在我的 monorepo 中,我如何复制第 1 部分中的设置?

首先,monorepo 使用pathstsconfig.json 文件中的字段,以便包可以相互导入,而无需实际安装它们。这很简单,而且效果很好。然而,如果我们使用该字段,它就会崩溃types,因为pathstypes似乎没有被编程为一起工作。具体来说:

  • 如果我尝试"types": ["library-a"]像以前一样指定,TypeScript 找不到它,说library-a找不到。
  • 如果我尝试添加一个 …

typescript tsconfig monorepo yarnpkg

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

Pixi.js - 用渐变填充绘制矩形

我正在使用Pixi.js v4 图形库用 JavaScript 制作游戏。我知道我可以像这样绘制一个黑色 + 圆角矩形:

const rectangle = new pixi.Graphics();
rectangle.beginFill(0); // Color it black
rectangle.drawRoundedRect(
    0,
    0,
    100, // Make it 100x100
    100,
    5, // Make the rounded corners have a radius of 5
);
rectangle.endFill();
stage.addChild(rectangle);
Run Code Online (Sandbox Code Playgroud)
  1. 如何绘制一个从白到黑渐变的圆角矩形?

  2. 如何绘制具有逐渐不透明度的圆角矩形,使其从左到右淡入?

javascript gradient pixi.js

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

我的“.eslintrc.js”文件出错 - “解析错误:已为@typescript-eslint/parser 设置了“parserOptions.project”。

ESLint 似乎无法解析“.eslintrc.js”文件

重现步骤:我建立了一个新的“hello world”TypeScript 项目,如下所示:

# Make a new directory for our new project
mkdir test
# Go into the new directory
cd test
# Create a "package.json" file
npm init --yes
# Install TypeScript
npm install typescript --save-dev
# Install ESLint (the linter)
npm install eslint --save-dev
# Install the Airbnb ESLint config (the most popular linting config in the world)
npm install eslint-config-airbnb-typescript --save-dev
# The import plugin for ESLint is needed for the Airbnb config to …
Run Code Online (Sandbox Code Playgroud)

typescript eslint

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

如何在 VSCode 中保存时自动运行“cargo fix”?

  • 目前,我在编写 Rust 时使用 VSCode 作为 IDE。
  • 我使用rust-analyzerVSCode 扩展,因为它似乎是 Rust 最好的扩展(截至 2022 年)。

我的 VSCode 的“settings.json”中有以下两个条目:

{
  "rust-analyzer.checkOnSave.command": "clippy",

  "[rust]": {
    "editor.formatOnSave": true,
  },
}
Run Code Online (Sandbox Code Playgroud)
  • 这使得clippy(linter)在按 Ctrl + s 保存文件时自动运行。
  • 它还使得rustfmt(格式化程序)在按 Ctrl + s 保存文件时自动运行。

除了这两件事之外,我还想cargo fix在按 Ctrl + s 保存文件时自动运行,因为这样做会自动清理未使用的导入。

我怎样才能做到这一点?

(我希望自动清理未使用的导入,就像我想要自动格式化程序一样。手动删除未使用的导入非常乏味,完全浪费我的时间,就像手动添加适当数量的制表符或空格一样。 )

rust rust-cargo

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

如何在Golang中使用字符串作为rand.Seed()函数的输入?

我想做的事:

根据字符串的内容(例如a1b2c3d4e5,),我想生成一堆“可重复的”随机事件。在Golang中生成可重复的随机数很容易-您只需使用rand.Seed()函数为随机数生成器播种特定的数,然后完成。

但是,rand.Seed()函数采用int64作为参数。因此,我将需要以某种方式将字符串转换为int64。

我已经尝试过的

我的第一个想法是使用base64对字符串进行编码,然后将字节序列转换为int64。但是,通过一些基本测试,似乎仅支持大约7个长度的字符串。添加第8个字符后,数字保持不变。

我猜这里的根本问题是,可能的字符串值比可能的int64值更多。

那么某种哈希函数呢?我所知道的大多数哈希函数都返回一个字节序列。我需要某种返回int64的哈希函数。也许这种方法也被误导了?

string random seed go random-seed

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

在 Ubuntu/Centos 上部署并运行 Go API 服务器

我刚刚使用 Iris 框架用 Go 完成了我的第一个后端,但现在我需要将其投入生产,以便我可以在我构建的 Slack 应用程序中使用它。

为了在本地测试代码,我只使用 Slack API 运行我的文件并go run main.go使用ngrokSlack API 进行测试,它正在工作并且已完成。

我有一个使用 Ubuntu 16.04.3 的 Droplet,另一个使用 Centos 7 的 Droplet...我正在寻找类似pm2go 的东西,运行服务器并使用 nginx 来指向该端口,但我读到 Go 是不同的,我必须使用像这样的https://fabianlee.org/2017/05/21/golang-running-a-go-binary-as-a-systemd-service-on-ubuntu-16-04/

但这对于一个简单的服务器来说是一个非常长的配置,我的问题是:

  • 这是使用 Go 配置 API 的常用方法吗?
  • 除了 DigitalOcean 之外,您是否建议使用其他服务来运行我的 API?

这确实是我第一次使用 Go,我只是想了解更多,我是 Laravel 和 NodeJS 的后端开发人员。

api rest go digital-ocean slack-api

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

为什么通用“try / except”块不适用于 Python TkInter 回调?

我已经确定,在 Python TkInter GUI 程序中,最佳实践是将整个内容包含在 try / except 块中,以便捕获所有异常并将其呈现给最终用户(而不是默默地出现问题或程序似乎无缘无故地退出)。

然而,这种方法存在一些问题。考虑以下小程序,当单击按钮时,该程序会尝试除以 0:

import tkinter

class Foo():
    def __init__(self):
        # Initialize a new GUI window
        root = tkinter.Tk()

        # The "Generic error" message is shown when the following is uncommented
        #number = 1 / 0

        # Define a button and draw it
        button = tkinter.Button(root, text='Generate an error', command=self.generate_error)
        button.pack()

        # Loop forever
        root.mainloop()

    def generate_error(self):
        # The "Generic error" message is not shown
        number = 1 / 0



if __name__ == …
Run Code Online (Sandbox Code Playgroud)

python tkinter

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