小编Nic*_*ter的帖子

Kubectl 从 cronjob 创建作业并覆盖参数

Kubectl允许您根据现有的 crons 创建临时作业。

这很有效,但在文档中没有指定在创建作​​业时传递参数。

例子:

kubectl -n my-namespace create job --from=cronjob/myjob my-job-clone
Run Code Online (Sandbox Code Playgroud)

有什么办法可以在创建时将争论传递给这项工作吗?

cron amazon-web-services kubernetes devops kubectl

15
推荐指数
2
解决办法
8256
查看次数

TypeScript 在 Express 中添加自定义请求标头

我正在尝试向我的请求添加自定义标头,但必须在界面中对其进行修改/实现。

默认Request接口引用IncomingHttpHeaders. 所以我试图用我自己的自定义令牌标头扩展这个接口。

import { IncomingHttpHeaders } from 'http';

declare module 'express-serve-static-core' {
    interface IncomingHttpHeaders {
        "XYZ-Token"?: string
    }
}
Run Code Online (Sandbox Code Playgroud)

我已更新我的.tsconfig文件以读取该./types文件夹。我的文件名是index.d.ts

如果我不使用自定义标头,我可以成功编译代码,但是当我尝试在代码中引用令牌标头时,我收到以下编译错误:

错误

error TS2538: Type 'string[]' cannot be used as an index type.

    req.headers['XYZ-Token']

Run Code Online (Sandbox Code Playgroud)

如果我使用原始界面的任何值,一切正常。

例子:

    req.headers['user-agent']
Run Code Online (Sandbox Code Playgroud)

附加信息:我正在使用 NestJS,它在底层使用 Fastify/Express。我可以确认正在使用的请求接口来自 Express。Fastify 向后兼容所有 Express 模块。主要使用 Fastify 因为它更快。

http-headers node.js express typescript nestjs

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

使用 create-react-app 时 .babelrc 文件的位置是什么?

我曾经create-react-app构建过一个项目,Babel 是随安装一起打包的。通常.babelrc文件位于项目的根目录中,但我在那里没有看到。我需要修改文件中的预设之一,但似乎找不到它。

我需要手动创建.babelrc文件还是它已经包含在内?如果是这样,文件的位置是什么?

javascript ecmascript-6 babeljs babel-loader react-create-app

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

使用 React 钩子将 setState 传递给子组件

我很好奇setState作为道具传递给孩子(哑组件)是否违反了任何“最佳实践”或会影响优化。

下面是一个例子,我有父容器的传球statesetState两个子组件,其中,子组件会调用该setState函数。

我没有明确调用setState孩子,他们引用一个服务来处理状态属性的正确设置。

export default function Dashboard() {

    const [state, setState] = useState({
        events: {},
        filters: [],
        allEvents: [],
        historical: false,
    });


    return (
        <Grid>
            <Row>
                <Col>
                    <EventsFilter
                        state={state}
                        setState={setState}
                    />
                    <EventsTable
                        state={state}
                        setState={setState}
                    />
                </Col>
            </Row>
        </Grid>
    )
}

Run Code Online (Sandbox Code Playgroud)

仪表板 setState 服务示例

function actions(setState) {
    const set = setState;
    return function () {
        return ({

            setEvents: (events) => set((prev) => ({
                ...prev,
                events,
            })),

            setAllEvents: (allEvents) => set((prev) => …
Run Code Online (Sandbox Code Playgroud)

javascript reactjs react-component react-state-management react-hooks

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

JavaScript 生成器 - 如何在使用 .next() 调用时跳过产量?

JavaScript 生成器允许您以程序方式生成操作。

是否可以在本地跳过/调用特定的产量?

鉴于以下示例,如何实现?

我想产生值 1、3 和 5。

function *getVal() {
    yield 1;
    yield 2;
    yield 3;
    yield 4;
    yield 5;
} 


let x = getVal();

// I want to yield ONLY values 1 , 3 , & 5

// Here val will equal 1
let val = x.next();

// I now want to val to equal 3
val = << skip second yield and hit 3 >>

// Is it possible to skip a yield natively?
// ...
Run Code Online (Sandbox Code Playgroud)

javascript yield generator next ecmascript-6

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

无法成功实现 http.Handler

我正在尝试编译以下代码。我无法成功实现我自己的模板处理程序结构,它会在构建时导致以下错误。

错误:

./main.go:28:46:不能在 http.Handle 的参数中使用 templateHandler 文字(类型 *templateHandler)作为类型 http.Handler:*templateHandler 没有实现 http.Handler(缺少 ServeHTTP 方法)

package main

import (
    "html/template"
    "log"
    "net/http"
    "path/filepath"
    "sync"
)

// templ represents a single template

type templateHandler struct {
    once     sync.Once
    filename string
    templ    *template.Template
}

// ServeHTTP handles the HTTP request.
func (t *templateHandler) ServerHTTP(w http.ResponseWriter, r *http.Request) {
    t.once.Do(func() {
        t.templ = template.Must(template.ParseFiles(filepath.Join("templates", t.filename)))
})
    t.templ.Execute(w, nil)
}

func main() {
    http.Handle("/", &templateHandler{filename: "chat.html"})
    // Start Web Server
    if err := http.ListenAndServe(":8080", nil); err …
Run Code Online (Sandbox Code Playgroud)

webserver templates http go

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