在多个 angularjs 项目之间共享通用功能/配置
Sharing common functionality/configuration across multiple angularjs projects
我有多个angularjs项目,每个项目都包含多个页面。我需要为$http共享一些通用配置,其中包含一些通用配置设置和跨这些项目的响应拦截器。我如何在多个 angularjs 项目中共享这个共同的部分。每个项目都加载 angularjs,并且是通过获取bower_dependencies来构建的。
我不会知道每个项目中模块存在的绝对路径。
具体来说,我需要将withCredentials设置为true,并在请求中设置一些公共标头,并为所有项目设置公共响应拦截器。有没有办法分享这个?
我可以从中构建一个通用的angularjs模块吗,如果是,那么它将如何与bower_dependencies一起工作?
你可以在配置阶段做到这一点
app.config(['$httpProvider',function ($httpProvider) {
$httpProvider.defaults.withCredentials = true;
// REST OF DEFAULTS
}]);
在此处和此处阅读有关$httpProvider
的更多信息
你描述的是为什么模块如此方便
每个模块都可以有自己的配置或运行阶段、服务等,因此将您需要的内容包装到一个模块中并将该模块注入多个项目与您已经使用的其他第三方模块没有什么不同。
angular.module('myUniversalModule', [])
.constant('someconstant',123)
.factory('myUniversalInterceptor', function() {
var myInterceptor = {
....
};
return myInterceptor;
}).config(['$httpProvider', function($httpProvider) {
$httpProvider.interceptors.push('myUniversalInterceptor');
$httpProvider.defaults.withCredentials = true;
}
]);
然后注入任何应用
angular.module('thisMainApp', ['myUniversalModule'])
.config(....
.run(....
.factory(....
.constant(...
.controller(...
相关文章:
- 添加文字和评论功能更新Div
- JavaScript打印功能使日历停止工作
- 每当您在选择器内移动鼠标时,悬停功能就会重复
- 如何防止网页加载后自动启动功能
- 除修剪外的其他功能
- 悬停功能触发器
- 使用angularjs向浏览器发送servlet响应(下载功能)
- RequireJS向模块传递配置总是返回undefined
- 删除CKEditor工具栏按钮,但不删除功能
- 异步facebook功能
- 如何将chrome扩展功能移植到移动设备(特别是jquery和trello)
- jQuery滚动功能只工作一次
- 如何配置分析以将数据发送到我自己的服务器
- Graphiti中是否有任何工具提示功能
- MEANJS用户配置文件功能
- 在多个 angularjs 项目之间共享通用功能/配置
- 如何将 Google 地方自动完成功能配置为仅在输入字段中至少有 n 个字母时执行请求
- 编辑配置文件更新功能不起作用
- 无法找到问题:使用iplib-js进行一般ip配置功能,无效ip返回有效
- jquery配置错误:readyList.承诺不是一种功能