小编Dra*_*ang的帖子

JS如何在语句块中声明没有词法范围的变量和函数?

var a; 
{
  function a() {}
  a = 60;
  console.log('1: ', a);
}
console.log('2: ', a);

var b; 
{
  b = 60;

  function b() {}
  console.log('3: ', b);
}
console.log('4: ', b);
Run Code Online (Sandbox Code Playgroud)

输出为:

1: 60
2: f a() {}
3: 60
4: 60
Run Code Online (Sandbox Code Playgroud)

我不知道为什么,如果除去花括号,它全部打印出来60。也许是因为吊装。但是据我所知,函数声明没有词法范围,即使有,它的第一个输出也应该打印函数,对吗?

javascript scope lexical-scope

5
推荐指数
0
解决办法
85
查看次数

如何使用电子伪造和电子包装器缩小电子应用程序中的打字稿源代码?

编辑:我通过使用电子生成器解决了这个问题,它在引擎盖下使用了 webpack,因此默认情况下所有问题都得到了很好的处理。我在最初使用电子锻造和电子封装时发布了这个问题,虽然我搜索了几个资源,但我仍然无法理解电子锻造/电子封装/电子构建器之间的区别

原问题:

我使用 react 和 typescript 构建了一个带有电子伪造的电子应用程序,但我发现它在发行版中包含我的整个打字稿源代码。

一探究竟,似乎没有办法摆脱源头,甚至asar可以轻松提取。缩小源代码可能是防止其他人复制和粘贴我的项目的最“正确”方式。我想可能我可以通过使用afterCopy电子包装器提供的钩子来实现这一点,但不知道我应该怎么做,有什么建议吗?

typescript electron electron-forge electron-packager

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