xdomain.js和browserify不起作用

时间:2014-07-10 10:48:31

标签: browserify xdomainrequest

我正在尝试将xdomain.js与browserify集成:

require('xdomain/dist/0.6/xdomain');

但我明白了:

Uncaught ReferenceError: xhook is not defined
  (anonymous function)  xdomain.js:882
  (anonymous function)  xdomain.js:1067

唯一的解决方案是连接脚本文件或在html中包含脚本(这是不可接受的,因为组件需要独立于外部依赖项)

有没有办法使用标准的browserify机制集成xdomain.js?

1 个答案:

答案 0 :(得分:0)

听起来您可能需要browserify-shim配置,以便您可以引入xhook依赖关系。例如在package.json

  //...
  "browser": {
    "xdomain": "xdomain/dist/0.6/xdomain.js",
    "xhook": "xdomain/vendor/xhook.js"
  },
  "browserify-shim": {
    "xhook": {
      "exports": "xhook"
    },
    "xdomain": {
      "exports": "xdomain",
      "depends": ["xhook"]
    }
  },
  "browserify": {
    "transform": [ "browserify-shim" ]
  },
  //...

当然,您必须使用npm安装browserify-shim包。