小编Ben*_*arp的帖子

Arr.includes(item) - 我可以使用多维数组吗?

我正在尝试使用arr.includes(item).如果该项是数组的元素,则该函数应返回True.但它似乎无法通过多维数组来实现.看一下这个截图(在控制台中运行节点):

在此输入图像描述

我在Google Chrome上获得了类似的结果.

是因为它是EC6功能,还没有完全功能吗?

Mozille页面上没有关于此类问题的信息.

javascript ecmascript-6

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

在定义返回接口的函数时,Typescript似乎行为不一致

当我有一个只有一个字段的接口(val)

interface ValObj  {
  val: number
}
Run Code Online (Sandbox Code Playgroud)

使用另一个字段创建对象会产生错误.

const someObj: ValObj = {
  val: 5, 
  someStr:"hello"
}
Run Code Online (Sandbox Code Playgroud)

但是当我们从函数返回一个值时,这个原则并不一致.定义一个函数来返回相同的接口,并返回相同的对象.

const func: () => ValObj = 
  () => ({
    val: 5, 
    someStr: "sdf"
  })
Run Code Online (Sandbox Code Playgroud)

演示

为什么Typescript的类型检查允许这个?它有什么办法吗?

typescript

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

将 git commit 消息传递给 npm 脚本并附加到预定义的字符串

在 NPM 项目中,我想为每个构建版本提交一个提交。这将使我能够返回到当前的构建版本,修复错误,而无需通过新版本的所有 QA。

我们可以使用这样的 npm 脚本进行提交(请参阅此答案):

包.json

"scripts": {
  "git": "git add . && git commit -m",
}
Run Code Online (Sandbox Code Playgroud)

然后通过运行来调用脚本:

npm run git -- "Message of the commit"
Run Code Online (Sandbox Code Playgroud)

我想在 npm run build 之后自动运行它。为此,我们可以创建一个新命令。

包.json

npm run git -- "Message of the commit"
Run Code Online (Sandbox Code Playgroud)

这可以使用运行 npm run buildAndCommit -- "commit for a new build"

唯一剩下的就是我想将此提交标识为可以链接到提交的提交。是否可以使用“ BUILD -”自动启动消息并将在命令行中传递的唯一消息添加到该消息中?就像是:

包.json

"scripts": {
  "buildAndCommit": "npm run build && git add . && git commit -m",
}
Run Code Online (Sandbox Code Playgroud)

如果无法在package.json 中对字符串进行模板化,我如何使用命令行脚本来实现它?(Powershell 是我的命令行工具)。

command-line npm npm-scripts

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

与对象反应状态挂钩

const App = () => {
  const [User, setUser] = useState({
    id: 1,
    name: "ed",
    age: Number,
    edit: false
  });
  return (
    <div>
      <input value={User.name} onChange={e => setUser.name(e.target.value)} />
    </div>
  );
};
Run Code Online (Sandbox Code Playgroud)

我正在使用React钩子。我将初始状态设置为一个对象。我尝试使用react挂钩更改值,但这会出现错误TypeError: setUser.name is not a function

javascript reactjs react-hooks

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