如果包有相对要求怎么办?

时间:2018-03-31 00:03:39

标签: javascript requirejs packages

我设法以异步格式获取某些形式的Off-The-Record,这些格式需要j喜欢,但代码中有相对要求,如require("../vendor/bigint.js")应该正常工作,因为主文件是lib/otr.js所以vendor只是包中的另一个目录。我不确定我做错了什么......

...
packages: [
  { name: "OTR", 
    location: "deps/betterotr", 
    main: "lib/otr" 
  },
  ...
]

在我使用otr的模块中,它调用

define(["OTR"],(OTR) => {...})

所以,我期望的是require("../vendor/bigint.js")将在OTR包的位置请求OTR包中的文件。相反,我看到我的浏览器正在做的事情......

  1. 请求file://my/app/deps/betterotr//lib/otr.js
  2. 请求file://my/app/OTR/vendor/bigint.js
  3. 失败
  4. 所以......不知道该怎么做。 require("../vendor/bigint.js")将包名称视为包裹的位置,而不是查找包裹的位置来解析路径。我是否必须始终将我的包裹名称与我的包裹位置相等?把这些东西保存在deps ...

    中真好

    文件夹结构为:

    • DEPS / betterotr / LIB / otr.js
    • DEPS / betterotr /供应商/ bigint.js
    • JS​​ / otruser.js
    • JS​​ / main.js
    • 其他东西

    其中main.js中包含require.config({})

0 个答案:

没有答案