javascript – 使用browserify加载远程脚本

我真的很喜欢使用
cdnjs在客户端加载javascript,它使我的项目更小更干净,并且加载一切也更快.我目前使用
require.js进行模块加载,可以从cdnjs和shim传统脚本加载,以便轻松使用它.我最近一直在寻找更多的
browserify作为替代方案,虽然我确实找到了
browserify-shim,它可以像需要一样来填充非cjs模块,但我很好奇是否有办法从远程源加载脚本浏览器化,或者如果您必须在本地安装所有内容,无论如何.

如果答案是您必须通过npm在本地安装所有内容,这会让事情变得有些奇怪.一方面,您可以将node_modules添加到.gitignore文件中,如果您使用的是package.json,则不必担心将所有deps保留在版本控制上,但另一方面,您需要重新获取模块在那里部署,这意味着一个额外的部署后步骤将运行npm install,并且该节点需要安装在您部署到的任何地方,这对我来说对于静态站点尤其有点尴尬.

真的,任何想法或讨论都会很棒:)

最佳答案 我想到的方法就是这样,你有三个选择:在部署之前将JS文件本地连接在一起(browserify),实时加载它们(require.js),或两者兼而有之.公平地说,您也可以使用require.js将文件与r.js连接起来.至少对我来说,我喜欢browserify的设计使用与npm模块相同的语法和心态.我认为最终你的体验并不重要.如果将所有代码打包在一起,那么部署,并且没有任何依赖关系,对我来说似乎是一个胜利.此外,我认为这更符合Java和类似的编译语言正在做的事情,它将所有deps放在一个可部署的包中.我知道我提到了Java,但是不要让这吓到你,因为我们都受益于我们周围人的想法甚至是我们认为不喜欢的语言.如果我不得不赌我的钱,我会打赌浏览器,因为它提供(我认为)更成熟的处理模块的方式(按文件而不是语法组织). npm还为我们提供了一个很好的方式来分享我们的代码,所以两个赞成他们.

点赞