有几个 Javascript 文件,组织在文件夹 Scripts/folder1、Scripts/folder2、...
使用 requirejs.config.baseUrl 将文件夹定义为默认文件夹,例如 Scripts/folder1。然后在 requirejs.config.paths 中,一些文件仅使用文件名进行寻址,而一些文件使用相对路径(如 ../folder2/blabla)进行寻址。
在对 Typescipt 文件 folder2/blabla.ts 进行编码时,我们需要来自 folder1 的模块“math”。所以我们写
import MOD1 = module("../folder1/math");
关于 Typescript,一切都很好。它可以找到模块。但是,使用 requirejs 存在问题。它不知道模块“../folder1/math”,它只知道“math”。
问题似乎是 import 语句需要一个文件名,从当前目录开始寻址。但是,这不是 requirejs 知道的模块 id。
在任何地方使用绝对路径,无论是在 requirejs 配置中还是在 Typescript 中的 import 语句中,都可以解决这个问题。
我做错了吗?或者绝对路径是要走的路?