小编boo*_*jum的帖子

在 Babeljs 配置中使用原生 ECMAScript 模块

我非常非常困惑将 babel 配置与原生 ECMAScript 模块一起使用,并"type": "module"package.json. 据我了解 Babel 文档(在这里,在“支持的文件扩展名”下),它应该是可能的。但是,如果我尝试使用这样的配置:

const config = () => {
  const presets = [
    "@babel/preset-react",
    [
      "@babel/preset-env",
      {
        bugfixes: true,
        useBuiltIns: "usage",
        corejs: { version: "3.6", proposals: true },
      },
    ],
  ];
  const plugins = ["@babel/plugin-transform-runtime"];
  return { presets, plugins };
};
export default config;
Run Code Online (Sandbox Code Playgroud)

我明白了Error while loading config - You appear to be using a native ECMAScript module configuration file, which is only supported when running Babel …

javascript babeljs parceljs

8
推荐指数
2
解决办法
1283
查看次数

键入 Object.fromEntries(new FormData(form))

TypeScript 新手,在使用Object.fromEntries. 我正在尝试削减形式并将其价值转化为其他东西。例如,给定所有数据都是字符串的同构形状,以下工作:


// example form content:
// {
//    foo: 'bar',
//    bar: 'biz'
//  }
//  return values
// {
//    foo: 'bar',
//    bar: 'biz'
//  }

export const getFormData = (form: HTMLFormElement) => {
  return Object.fromEntries<string>(
    new FormData(form) as Iterable<[PropertyKey, string]>,
  )
}
Run Code Online (Sandbox Code Playgroud)

如何将从上面返回的值转换为字符串以外的值?例如:


// example form content:
// {
//    foo: '1',
//    bar: 'biz',
//    biz: 'false'
//  }
//  desired return values
// {
//    foo: 1,
//    bar: 'biz',
// …
Run Code Online (Sandbox Code Playgroud)

forms javascript-objects typescript typescript-generics

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

使用 Material UI &lt;Grid&gt; 进行两列布局时出现问题

我正在尝试实现两列布局,它们的高度相等,并且各自占据屏幕的一半。图片解释得更好,这是一张

不工作的代码如下:

import React from "react";
import { makeStyles } from "@material-ui/core/styles";
import CssBaseline from "@material-ui/core/CssBaseline";
import Grid from "@material-ui/core/Grid";
import Paper from "@material-ui/core/Paper";

const useStyles = makeStyles(theme => ({
  root: {
    flexGrow: 1,
    alignItems: "stretch"
  },
  column: {
    flexDirection: "column"
  },
  paper: {
    padding: theme.spacing(2),
    textAlign: "center",
    color: theme.palette.text.secondary
  }
}));

export default props => {
  const classes = useStyles();
  return (
    <>
      <CssBaseline />
      <Grid container className={classes.root}>
        {/* COLUMN ONE */}
        <Grid container item className={classes.column}>
          <Grid …
Run Code Online (Sandbox Code Playgroud)

javascript flexbox reactjs material-ui

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

如何更改 ~/.gsutil 目录的位置?

gsutillinux 上目录的默认位置是$HOME. 有没有办法改变它?

我所知道的$BOTO_CONFIG$BOTO_PATH它们用于不同的目的。

gsutil google-cloud-platform

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

docker-compose:以特定用户身份创建命名卷

这是一个最小的docker-compose.yml

version: "3.6"

services:
  foo:
    user: "${UID}:${GID}"
    image: node:latest
    container_name: foo
    working_dir: /var/www/foo
    volumes:
      - bar:/var/www/foo/bar

volumes:
  bar:
Run Code Online (Sandbox Code Playgroud)

运行后,docker-compose up命名卷将在 处创建/var/lib/docker/volumes/project_bar,并且该project_bar目录的所有者为root- 这很好。虽然_data它里面的目录属于root- 我希望它属于特定的非 root 用户。

例如:

docker-compose run --rm foo sh -c "mkdir bar/foo"
Run Code Online (Sandbox Code Playgroud)

将会失败mkdir: cannot create directory 'bar/foo': Permission denied

我的印象是指定user: "${UID}:${GID}"(注意:uid/gid可用于docker,它们在 shell 中导出)可以解决此问题。显然,我错了。

有没有办法让/var/lib/docker/volumes/project_bar/_data特定用户拥有?如果可能的话,什么都不chown做。并且不涉及Dockerfile.

编辑:为了澄清,我希望/var/www/foo/bar …

docker docker-compose

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