发布网友 发布时间:2022-04-26 22:30
共2个回答
懂视网 时间:2022-05-15 20:04
bower 是一个常用的包管理工具,用起来和npm很相似,但是两者又有一些区别,可以参考 —— What is the difference between Bower and npm。这里不说bower本身,而想说一下bower的overrides配置。override 本身是覆盖的意思,实际上,它的作用也是用来覆盖依赖包原有的配置。如果是手动引入 bower 依赖包的文件的话,这个配置没什么用,但是当你使用如wiredep这种自动注入工具时,overrides就很有用了。
比如我们用bower安装了 ace-builds 包:
bower install ace-builds --save
然后使用wiredep自动注入bower依赖:
$ node > require('wiredep')({ src: 'index.html' });
(具体命令参见wiredep文档)
你会发现 ace-builds 相关文件一个也没有注入到 index.html 中,这是为什么呢?
打开 ace-builds 的依赖包的 bower.json 文件 :
你会发现里面并没有配置main
选项,而 wiredep 的自动注入其实就是根据每个依赖包中的main
选项来决定注入哪些文件的。没有main
,wiredep自然没法自动注入了。
这时 overrides 选项就派上用场了,我们可以这么定义:
"overrides": { "ace-builds": { "main": [ "src-min-noconflict/ace.js", "src-min-noconflict/mode-yaml.js", "src-min-noconflict/mode-javascript.js", "src-min-noconflict/theme-github.js", "src-min-noconflict/ext-language_tools.js" ] } }
指出我们需要自动注入的文件。
热心网友 时间:2022-05-15 17:12
安装之前检查nodejs如果没安装nodejs按照以下步骤安装$su-$yuminstallopenssl-devel$cd/usr/local/src$wgetprivate-bower-config.json将以下内容粘贴进去:{"port":5678,"registryFile":"./private-bower/bowerRepository.json","disablePublic":false,"publicRegistry":"/packages/","repositoryCache":{"git":{"enabled":true,"cacheDirectory":"./private-bower/gitRepoCache","host":"localhost","port":6789},"svn":{"enabled":true,"cacheDirectory":"./private-bower/svnRepoCache","host":"localhost","port":7891}},"log4js":{"enabled":true,"configPath":"./private-bower/log4js.conf.json"}}$vim/data/private-bower/log4js.conf.json{"appenders":[{"type":"dateFile","filename":"./private-bower/private-bower.log","pattern":"-yyyy-MM-dd","alwaysIncludePattern":false},{"type":"console"}],"replaceConsole":true}启动private-bower$sudosu-$cd/data$private-bower--config./private-bower-config.json[2014-06-3010:00:22.481][INFO]console-[bower]Refreshingpublicpackages[2014-06-3010:00:22.512][INFO]console-[bower]Bowerserverstartedonport5678[2014-06-3010:00:22.538][INFO]console-[bower]Startinggitcacheserver[2014-06-3010:00:22.543][INFO]console-[bower]Startingsvncacheserver[2014-06-3010:01:09.167][INFO]console-[bower]Loadedpublicpackages确保private-bower正常启动:打开一个新窗口来访问:$lynx会显示:ForkmeonGitHubPrivateBower____________________DocsPublicPackagesPrivateBowerserviceisdownNoprivatepackagesregisteredreaddocsabouthowtoregisterpackages.LoadingPackages{{package.name}}hits:{{package.hits}}{{package.repo}}CreatedbyBarnaTothBarnaTóth如果是这样,就安装完毕了客户端测试$sudosu-$npminstall-gbower$su-wlsuser$bowerhelp$vim.bowerrc{"registry":"http://:5678"}$cd$bowerinstalljquery