小编SIn*_*Sim的帖子

如何在大型React项目中找到无效代码?

为了重构客户端项目,我正在寻找一种安全的方法来查找(和删除)未使用的代码。

您使用什么工具在大型React项目中查找未使用/无效的代码?我们的产品已经开发了几年,并且很难手动检测不再使用的代码。但是,我们确实尝试删除尽可能多的未使用的代码。

对于一般策略/技术(除特定工具之外)的建议也将受到赞赏。

谢谢

javascript refactoring dead-code reactjs

7
推荐指数
5
解决办法
3431
查看次数

create-react-app 的缺点是什么?

我必须从头开始构建一个前端项目。

这个项目雄心勃勃,将持续很长时间。在最初几周的开发中,我的主要目标是在良好的基础上开始。

因此,我想知道 create-react-app 是否是一个不错的选择,因为它很容易开始,而且这个工具箱针对生产进行了优化。

但是,如果我使用此解决方案,我的项目将如何模块化?

有人知道使用 CRA 的项目是否会出现一些缺点吗?

我主要担心的是打包程序。

如果项目越来越大,我是否需要优化CRA的webpack config?

用我自己的捆绑器配置从头开始创建我的项目不是更好吗?

production reactjs webpack create-react-app

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

我可以从 ts 编译器中动态排除文件吗?

我正在设置一个节点/打字稿服务器来构建实时应用程序。我的服务器和客户端位于同一个文件夹中。

我想要做的是,当我运行“server:dev”脚本时,从打字稿编译器中排除“src/client”,当我运行“client:dev”时,结束排除“src/server”。

我已经尝试找到一种从命令行中排除文件的方法,但我没有找到解决方案。

这就是我的 tsconfig.json 的样子

{
  "compilerOptions": {
    "target": "es6",                          
    "module": "commonjs",                     
    "lib": ["dom","es2017"],                  
    "sourceMap": true,
    "outDir": "dist",                         
    "strict": true,                           
    "noImplicitAny": true,                     
    "moduleResolution": "node",                  
    "esModuleInterop": true,                     
    "resolveJsonModule": true                 
  },
  "exclude": [
      "src/client"
  ]
}
Run Code Online (Sandbox Code Playgroud)

但当我运行客户端时,我需要包含“src/client”并排除“src/server”。

node.js typescript reactjs

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

supertest 在每次测试时更改 url

我是后端开发的新手,我面临一个我不明白的问题。

我设置了 API 的第一个路由,名为“health”,它只返回一条简单的消息来了解我的服务器是否已启动。

这条路线看起来按预期工作。

然而,

当我尝试使用 jest API 中的“toMatchSnapshot”方法测试此路由时,测试未通过,因为 url 中的内容不断变化。

我的测试文件“index.test.ts”:

const request = supertest.agent(app);
describe("app", () => {

  it("should return a successful response for GET /health", async () => {
    const res = await request.get("/health");
    res.header = omit(res.header, ["date"]);
    expect(res).toMatchSnapshot();
  });

});
Run Code Online (Sandbox Code Playgroud)

服务器“index.ts”的索引:

const app = express();

expressService(app);

if (require.main === module) {
  app.listen(PORT, () => {
    console.log("server started at http://localhost:" + PORT);
  });
}

export default app;
Run Code Online (Sandbox Code Playgroud)

我的功能“expressService”:

const expressService = (app: Application) => {
    app.use(cors()); …
Run Code Online (Sandbox Code Playgroud)

javascript node.js typescript supertest jestjs

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