【发布时间】:2017-03-07 18:43:26
【问题描述】:
我希望我的应用程序中的所有路径都相对于我的项目根目录,这样我就不必这样做了:
import foo from "../../bar.js";
var foo = require("../../bar.js");
我的应用程序客户端是使用 Webpack 编译的,所以我想我可以使用 Webpack 中的“解析”工具,但不希望这样做,因为这会增加对使用 Webpack 的依赖。后端使用 Node/Express 服务器。
有没有在前端和后端都有效的解决方案?
【问题讨论】:
-
你想在开发过程中从根目录引用依赖吗?由于 webpack 创建了一个单体包,客户端不会有问题
-
是的,但在客户端和服务器上。即在某些情况下,我有客户端和服务器都使用的文件,并且它们具有相对路径的依赖关系。
-
您可以创建一个符号链接以指向您的
src目录并将其放入您的node_modules目录中:ln -fs ../src node_modules/。然后你可以require('src/bar')。 -
这仅限于 node_modules 文件夹中的项目,我想从根目录中的其他文件夹导入/需要的任何其他文件呢? /seed, /config, /i18n, /shared... ?
-
您可以改为创建一个名为
root的符号链接以指向项目的根目录,并将其放在 node_modules 目录或其他目录下。然后你可以require('root/seed/bar')。您需要在项目的postinstallnpm 脚本中创建此符号链接。