问题标签 [grunt-wiredep]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
gruntjs - 注入前如何更改路径
是否可以在注入发生之前更改注入文件的路径?
我正在使用 Grunt/Bower/Connect/Wiredep,我的目录结构是:
(注意:在我添加的 .bowerrc 文件中directory: vendor
)
当我运行自定义任务grunt serve:dev
时,它将创建目录dev-dist
,然后我将我的 index.html(仅)复制到文件夹,然后运行任务wiredep
。
运行后wiredep
,我的依赖项的 src 路径都以 '../vendor/' 为前缀。问题是当我运行时connect
我有选项base: ['vendor', 'dev-dist', 'src']
。当一切都被提供时,供应商的相对路径没有任何意义,因为供应商目录已经在根目录中提供。
有没有办法在wiredep注入文件之前修改注入文件的路径?(所以我可以删除'../vendor')
我希望发生的是从同一个工作区能够运行grunt serve:*
和指定 dev/stage/prod 环境。这就是为什么我不想为整个 www 目录提供服务。
有没有办法在连接中排除文件夹?(因此,我可以排除 stage-dist / prod-dist 文件夹,而不是指定 base:[...])
谢谢,
京东
gruntjs - 如何将 grunt 配置为不忽略任何路径
grunt-wiredep 任务正在../
从所有路径中删除。
例如:
变成
我想../
被维护。但是,如果我设置ignorePath
为空白字符串(一个空格字符)或删除 ignorePath
参数,则 HTML 中不包含任何 javascript 文件。
javascript - 缺少 Bower 组件
我正在尝试利用 grunt-wiredep 将任何 Bower 组件自动注入到我的 html 中。非常简单,但我不确定在运行本地主机时如何设置正确的 bower 目录路径。目前我收到以下错误:
这是我的结构
项目
应用程序(包含 sass、js、html 等...)
bower_components
节点模块
鲍尔.json
包.json
Gruntfile.js
HTML 文件
咕噜声文件
gruntjs - Grunt Wiredep 注入 Bower 组件问题
我正在使用 grunt 任务wiredep 将我所有的凉亭组件注入我的 index.html 并遇到一些问题。我正在尝试像这样开始非常基础-
在索引中我只有
其他所有内容都已正确注入,但是当我运行任务时出现此错误。
调试时遇到问题 - 可以使用任何帮助!
我也有我的 .bowerrc 指向正确的目录(我认为)
gruntjs - Gruntwiredep可以缩小HTML文件中的版本吗
是否可以使用 Gruntwiredep 插件在 HTML 页面中注入缩小版本的依赖项?
angularjs - 角度 ng-view 无法正确解析 CSS 文件路径
我有一个带有 ng-view 的角度应用程序设置。我有 1 层和 2 层深的路线,例如:
我正在使用 html5 模式删除 scotch 路由,因此我的路由呈现为“localhost:9000/sample”而不是“localhost:9000#/sample”
我还使用节点 modrewrite 服务器来启用 html5 模式,因此我可以使用 connect-modrewrite npm 模块和以下 grunt 配置接受指向我的 url 中的深层链接的直接链接(例如 localhost:9000/sample/id) :
我在标题中定义了 css 文件,例如:
在我的应用程序中路由时,这工作正常。当我接受一级深度的直接链接时,它也可以工作,因此直接导航到“localhost:9000/sample”将呈现一个页面。但是,当我使用直接链接到 2 级深度的路径时,例如“localhost:9000/sample/id”,我的应用程序将无法正确呈现我的 css,并且我会看到如下控制台错误:
解决我的 javascript 依赖项没有问题,它们使用相同类型的相对路径,只是 css 的。我可以通过在样式(href="/styles/main.css")前面加一个斜杠来解决这个问题,但我不想这样做,因为它会限制我的应用程序的部署方式,而且它也是不是wiredep默认安装css bower依赖项的方式。是否有一些 angular-ng-view 友好的方式来确保我的 css 文件路径可以正确解析,而不管我在哪条路线上?
javascript - 为什么wiredep 不断删除我的凉亭组件?
每当wiredep grunt 任务运行时,它都会删除socketio。
我已经通过安装 socketio
包裹在我的bower.json
当我运行时,bower install
没有任何变化。
该应用程序在我的 mac 上构建良好,但出于某种疯狂的原因,它不断删除 socketio 并且无法在我的 ubuntu 机器上构建。
gruntjs - 对具有不同依赖项的多个文件执行 grunt-wiredep
目前的项目结构有点像这样:
建议的项目结构将在项目根目录中添加更多静态 html 文件。到目前为止,我一直在管理 bower.json 中的所有前端依赖项,并使用 grunt-wiredep 任务将其自动包含在 index.html 中。但是随着新文件的添加,每个文件都会有不同的依赖关系。
管理这些具有不同 Bower 依赖项的文件的有效方法是什么?
jquery - jQuery dependency above Angular one: WARNING: Tried to load angular more than once
I am working on a Yeoman Angular-generated folder. I installed through Bower a module that requires jQuery. Grunt's wiredep places the jQuery dependency above the AngularJS in the index.html
, as follows:
This seems reasonable, as jQuery doesn't depend on Angular.
The thing is that when I try to load my app in the browser, I get the following message in JS console:
If I manually swap the jQuery
dependency with the angular
one at index.html
, everything works like a charm, but when I grunt build
my app, default order is set, so I can't get the working configuration in the dist folder.
bower.json
:
Really appreciate your help here!
javascript - 使用 grunt 和 dist 项目文件夹进行开发和部署时如何管理 bower 依赖项?
我正在尝试建立一个带有 bower 依赖项的 Grunt 项目,它有两个任务:development和deploy。项目文件夹结构目前如下所示:
我目前正在使用grunt-wiredep自动将 bower 依赖项包含在dist
. 我试图将其保留bower_components
在dist
文件夹之外以保持开发和部署的分离(即使在开发期间该站点是从 提供的dist
)。
因为我是新手,所以我在制定正确的 grunt/bower 模块以及开发和部署的最佳实践方面完全没有想象中的失败(是的,Yeoman 处理了很多,但我正在努力学习)。我目前的愿景是:
- Connect 提供
dist
文件夹中的 HTML 页面。 - 在开发中,凉亭组件将自动包含在页面中(wiredep),但需要从
dist
文件夹中提供(grunt-wiredep-copy)。 - 在部署中,bower 组件将获取缩小版本并将它们与项目 JS 和 CSS 文件连接起来,或者只是将 bower 组件连接到单个 JS 和 CSS 文件中。
我的问题是:在开发中使用 Bower 组件的(或一种)好方法是什么,并使用最少的grunt-contrib-copy / grunt-contrib-concat / grunt-string-replace或此类模块来部署目标以移动文件并重写HTML 参考资料?或者这一步是否总是有很高的手动元素 - 这对我来说似乎很奇怪,因为凉亭和咕噜声像肯德基薯条和“土豆和肉汁”一样一起出现。
JS 和 LESS/CSS 连接很容易,每种类型都有各自的 uglify 和 minify grunt 模块。Bower 文件被排除在这些进程之外,并且wiredep 和wiredepCopy 似乎没有为部署任务提供“清理”(缩小/连接和更新HTML 文件中的相应链接)的简单方法。在开发任务期间,wiredepCopy 甚至不会将 HTML 中的引用更新到移动的文件,这对我来说似乎很奇怪(并且请求拉取请求)。也许wiredep不是前进的方向?谢谢!