这是一个从 Firebase 存储呈现数据并将其列出的组件。该函数要做的就是将从 firebase 存储中提取的视频设置为 useState。这样我就可以调用视频并映射到一个新组件中,该组件恰好是一个按钮列表。它工作得相对很好,问题是该组件渲染了两次,第一次它不保存状态中的视频,第二次它这样做。换句话说,该组件不会等待视频保存在状态中,而只是渲染自身,导致带有视频标题的按钮列表不显示。
// ReactJS
import { useState, useEffect } from "react";
// NextJS
import { useRouter } from "next/router";
// Seo
import Seo from "../../../components/Seo";
// Hooks
import { withProtected } from "../../../hook/route";
// Components
import DashboardLayout from "../../../layouts/Dashboard";
// Firebase
import { getDownloadURL, getMetadata, listAll, ref } from "firebase/storage";
import { storage } from "../../../config/firebase";
// Utils
import capitalize from "../../../utils/capitalize";
import { PlayIcon } from "@heroicons/react/outline";
function Video() {
// States
const [videos, setVideos] …
Run Code Online (Sandbox Code Playgroud) 我正在使用 nodejs 和 express 创建一个 api,我想将 http2 与 ExpressJS 集成
这是我的代码:
'use strict';
const http2 = require('http2');
const fs = require('fs');
const path = require('path');
const express = require('express');
const bodyParser = require('body-parser');
const app = express();
const port = process.env.PORT || 443;
// Middleware
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));
// Routes variables
const indexRouter = require('./routes/index');
// Routes uses
app.use('/', indexRouter);
// Server configurations
const key = path.join(__dirname + '/security/key.pem');
const cert = path.join(__dirname + '/security/certificate.pem');
const options = …
Run Code Online (Sandbox Code Playgroud) 我正在为 API 上的 CRUD 操作创建 NodeJS 和 MongoDB 库。我正在尝试使用 Typescript 创建一个接口来获取 url 和数据库名称,如下所示:
但我收到以下错误:
interface IConfig {
url: string
name: string
}
export default IConfig
Run Code Online (Sandbox Code Playgroud)
Parsing error: The keyword 'interface' is reserved
我使用 standardjs 作为 linter,这是我的tsconfig
文件:
{
"compilerOptions": {
/* Visit https://aka.ms/tsconfig.json to read more about this file */
/* Projects */
// "incremental": true, /* Enable incremental compilation */
// "composite": true, /* Enable constraints that allow a TypeScript project to be used with project references. */ …
Run Code Online (Sandbox Code Playgroud) 我正在尝试将图标放在输入中的左侧。tailwindcss 有一个用于 ReactJS 的库,其中包含 SVG 和组件作为图标:https: //heroicons.com/。
我的组件:
import React from 'react'
import { MailIcon } from '@heroicons/react/solid'
const BlogPost = () => (
<section className="container-full flex flex-col m-20">
<h2 className="mx-auto uppercase font-bold">Check my blogpost</h2>
<form action="POST" className="mx-auto mt-5 w-6/12">
<label htmlFor="email">
<MailIcon className="w-8 h-8" />
<input className="form-input w-full" type="email" name="email" id="email" placeholder="email@kemuscorp.com" />
</label>
</form>
</section>
)
export default BlogPost
Run Code Online (Sandbox Code Playgroud)
如您所见,MailIcon 组件可以接收 tailwindcss。有想法将图标嵌入输入中吗?
挑战是在 python 中找到第一个非连续数字。我已经成功地使用一个名为 more_itertools 的库来做到这一点,但挑战要求不涉及任何库。我该如何解决?这是我的代码:
from more_itertools import consecutive_groups
def first_non_consecutive(l):
g = []
for grp in consecutive_groups(l):
g.append(list(grp))
if len(g) > 1:
return g[1][0]
Run Code Online (Sandbox Code Playgroud) reactjs ×2
css ×1
express ×1
html ×1
http2 ×1
icons ×1
list ×1
next.js ×1
node.js ×1
python ×1
python-3.x ×1
tailwind-css ×1
typescript ×1
use-effect ×1
use-state ×1