首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将其他文件夹链接到VSCODE中的当前项目?

如何将其他文件夹链接到VSCODE中的当前项目?
EN

Stack Overflow用户
提问于 2020-05-02 06:47:35
回答 2查看 202关注 0票数 0

我有用于节点开发的VSCode。

我有一个名为“实用程序”的通用代码库,它位于文件夹下面。

  • /workspace/common/util

在工作区文件夹下有其他应用程序文件夹,如

  • /workspace/service-1
  • /workspace/service-2
  • /workspace/service-3

所有这些应用程序都需要在实用程序中使用这些函数。

我不想为这3个应用程序中的每一个创建实用程序文件夹。

但是,如何将这3个应用程序链接到实用程序文件夹,以便我只需要在一个地方使用主实用程序?

附件是launch.json

代码语言:javascript
复制
{
    "version": "0.2.0",
    "configurations": [
        {
            "type": "node",
            "request": "launch",
            "name": "Launch Program",
            "skipFiles": [
                "<node_internals>/**"
            ],
            "program": "${workspaceFolder}/src/app.js"
        }
    ]
}

P.S.:稍后我还需要将应用程序部署到AWS,如何将这个实用程序文件夹包含在我的serverless.yml中,以便在部署代码时也包括这个文件夹?

谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-05-03 04:23:58

我做了一些研究,也询问了周围的几个人,看起来最常见的建议是npm的通用代码,并包含在package.json中。

然而,npm是一个开放的平台,我不想通过公共的方式访问我的代码。如果我需要成为一个私人存储库,每月要交一笔费用。

最后,在VSCode中创建一个单独的文件夹来存储所有公共代码,然后在.vscode目录下创建一个名为tasks.json的任务,其内容如下:

代码语言:javascript
复制
{
    "version": "2.0.0",
    "tasks": [
      {
        "label": "copy_utility_source",
        "type": "shell",
        "command": "cp -R ../../utility/src/ ./src/"
      }
    ]
  }

然后,在我的应用程序launch.json中,我包含以下代码:

代码语言:javascript
复制
{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "Launch applicationService",
      "type": "node",
      "console": "integratedTerminal",
      "preLaunchTask": "copy_utility_source",
      "request": "launch",
      "program": "${workspaceFolder}/src/app.js",
      "cwd": "${workspaceFolder}/src"
    }
  ]
}

通过这样做,我只需要在一个地方维护公共代码,而公共代码将自动部署到正在启动的应用程序中。

票数 0
EN

Stack Overflow用户

发布于 2020-05-02 10:23:09

您只需要从utils导出所需的函数,然后将它们导入到不需要复制代码的服务中。此外,如果你的模块是你自己的,它会在你自己的模块自动部署的时候,从库中提取你需要的任何代码,不需要做任何额外的事情。(对于节点模块,只需执行以下操作:npm install 'the-node-module'或包含在package.json中,并首先使用npm安装)

如果您使用webpack或browserify来传输/捆绑您的代码,您可以使用导出/导入语法(请记住,如果使用aws SAM本地cli调试lambdas --我肯定会推荐这样做),使用require语法设置稍微容易一些,因此要从utils文件夹导出模块/函数,可以使用:

const myUtilFunc = () => {return 'some utilFunc code here'}; module.exports = myUtilFunc;

当将该函数导入到您的服务中时,请使用:const myUtilFunc = require('../common/util');或根据导出的内容使用const {myUtilFunc} = require('../common/util')对其进行重构

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61555506

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档