我正在寻找帮助,使用Yeoman生成的Angular种子应用程序在brackets.io中使用实时预览。
Angular项目的目录结构有一个app
子目录,其中包含程序代码,其中包含所需的入口点index.html
。
此index.html将bower_components
文件夹称为相对地址,并且还具有指向js
文件夹下app
子目录的相对链接。
我正在使用bracket.io的实时预览功能,但无法使用默认的相对路径找到Angular和Bootstrap。
我已经使用了内部Web浏览器,以及我已经设置的IIS应用程序(它本身运行良好),并且在实时预览启动时都会出现同样的问题。
作为一种解决方法,我已将这些更改为绝对路径,但我正在寻找可能的原因,以找出未找到相对路径的原因。
这似乎特定于bracket.io的实时预览,而不是在生成的代码中。
原始生成的代码:
<!-- build:js(.) scripts/vendor.js --> <!-- bower:js --> <script src="bower_components/jquery/dist/jquery.js"></script> <script src="bower_components/angular/angular.js"></script> <script src="bower_components/bootstrap/dist/js/bootstrap.js"></script> <script src="bower_components/angular-animate/angular-animate.js"></script> <script src="bower_components/angular-cookies/angular-cookies.js"></script> <script src="bower_components/angular-messages/angular-messages.js"></script> <script src="bower_components/angular-resource/angular-resource.js"></script> <script src="bower_components/angular-route/angular-route.js"></script> <script src="bower_components/angular-sanitize/angular-sanitize.js"></script> <script src="bower_components/angular-touch/angular-touch.js"></script> <!-- endbower --> <!-- endbuild --> <!-- build:js({.tmp,app}) scripts/scripts.js --> <script src="scripts/app.js"></script> <script src="scripts/controllers/main.js"></script> <script src="/.bowerrc"></script> <!-- endbuild -->
我的解决方法:
<!-- build:js(.) scripts/vendor.js --> <!-- bower:js --> <script src="/bower_components/jquery/dist/jquery.js"></script> <script src="/bower_components/angular/angular.js"></script> <script src="/bower_components/bootstrap/dist/js/bootstrap.js"></script> <script src="/bower_components/angular-animate/angular-animate.js"></script> <script src="/bower_components/angular-cookies/angular-cookies.js"></script> <script src="/bower_components/angular-messages/angular-messages.js"></script> <script src="/bower_components/angular-resource/angular-resource.js"></script> <script src="/bower_components/angular-route/angular-route.js"></script> <script src="/bower_components/angular-sanitize/angular-sanitize.js"></script> <script src="/bower_components/angular-touch/angular-touch.js"></script> <!-- endbower --> <!-- endbuild --> <!-- build:js({.tmp,app}) scripts/scripts.js --> <script src="/app/scripts/app.js"></script> <script src="/app/scripts/controllers/main.js"></script> <script src="/.bowerrc"></script> <!-- endbuild -->
答案 0 :(得分:1)
首先,如果你使用自耕农角度发生器,那么你将会运行咕噜声&#34;服务&#34;任务将处理&#39; serve&#39;中定义的所有任务(包括livereload)。 yr gruntfile的部分。到目前为止,你的Brackets没有任何作用。
如果你没有使用grunt,并且你正在使用支架的livereload,那么你必须完成2个任务。
1。)更新yr .bowerrc,如下所示
{
"directory": "app/bower_components"
}
现在所有的bower依赖关系将转到指定的目录,在这里你想要它们 进去&#34; app&#34;文件夹中。
2。)现在你可以托管你的app文件夹&amp;您的浏览器将找到所有依赖项。 无需更改index.html
注意:Yeoman再次是由&#34; angular-generator&#34;生成的独立和grunt文件。处理不同的任务。 Brackets在这里没有角色或依赖。 当你做&#34;实时预览&#34;使用括号,它只运行yr index.html文件,这样就无法访问app app文件夹以外的内容