我正在尝试将这两者都包含knockout
在knockout-projections
Browserify 的项目中。我正在使用browserify-shim
将它们绑定在一起。
不幸的是,knockout-projections
代码在需要时失败knockout
,无论是编译时错误还是运行时错误——取决于 shim 的设置。
为了说明这个问题,我建立了一个 github 存储库:brianmhunt/bshim-ko-testcase。
我正在尝试将这两者都包含knockout
在knockout-projections
Browserify 的项目中。我正在使用browserify-shim
将它们绑定在一起。
不幸的是,knockout-projections
代码在需要时失败knockout
,无论是编译时错误还是运行时错误——取决于 shim 的设置。
为了说明这个问题,我建立了一个 github 存储库:brianmhunt/bshim-ko-testcase。
@brianmhunt,browserify 仍然不是问题。
您对 repo 的最新更改通过 bower安装了淘汰赛和淘汰赛投影。那也行。
但是,每个 bower 组件也有一个 package.json。这也不是问题,但是knockout-projections中的 package.json 文件也将敲除指定为依赖项。
在您自己的 package.json 中的“浏览器”设置和在其代码中调用“require('knockout')”的敲除投影之间,在这种情况下它有点像 catch-22。
几个解决方法:
替代方案:(通过 npm 安装):
{ "name": "bshim-ko-test", "version": "0.0.3", "repository": "https://github.com/brianmhunt/bshim-ko-testcase", "browser": { "koproj": "knockout-projections" }, "main": "./test.js", "dependencies" : { "knockout" : "~3.0.0", "knockout-projections" : "SteveSanderson/knockout-projections" } }
现在您的步骤将是:
<repository>
<repository>
和“npm install”陷阱: