加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

angularjs – 使用Gruntjs配置Restangular.baseUrl

发布时间:2020-12-17 07:39:56 所属栏目:安全 来源:网络整理
导读:我在使用Gruntjs构建的项目中使用Restangular.这是一个片段: // scripts/app.jsangular.module('myApp',['restangular'])]) .config(['RestangularProvider',function(RestangularProvider) { /* this is different on dev,test,prod environments */ var b
我在使用Gruntjs构建的项目中使用Restangular.这是一个片段:
// scripts/app.js

angular.module('myApp',['restangular'])])
  .config(['RestangularProvider',function(RestangularProvider) {

    /* this is different on dev,test,prod environments */
    var baseUrl = 'http://localhost:8080/sms-api/rest/management/';

    RestangularProvider.setBaseUrl(baseUrl);
}])

如果在cli中指定了baseUrl,或者如果未指定,则希望使用默认值:

$grunt server
Using default value for 'baseUrl'

$grunt build --rest.baseUrl='http://my.domain.com/rest/management/'
Using 'http://my.domain.com/rest/management/' for 'baseUrl'

我怎样才能做到这一点?

借助于 Grunt preprocess可以在文件中替换(和其他东西)模板是有用的.

首先将其添加到您的.js代码中:

/* Begin insertion of baseUrl by GruntJs */
/* @ifdef baseUrl
 var baseUrl = /* @echo baseUrl */ // @echo ";"
 // @endif */

/* @ifndef baseUrl
 var baseUrl = 'http://www.fallback.url';
 // @endif */
/* End of baseUrl insertion */

然后在grunt文件中,安装grunt预处理(即npm安装grunt-preprocess –save-dev后,添加以下配置:

preprocess: {
        options: {
            context: {

            }
        },js: {
            src: 'public/js/services.js',dest: 'services.js'
        }
    },

显然,您需要根据您使用的任何文件来更新js文件列表.重要通知 – 如果您计划更新同一个文件(而不是新目的地),则需要使用内联选项

最后,为了使用命令行配置变量,请将以下自定义任务添加到grunt文件中:

grunt.registerTask('baseUrl',function () {
        var target = grunt.option('rest.baseUrl') || undefined;
        grunt.log.ok('baseUrl is set to',target);
        grunt.config('preprocess.options.context.baseUrl',target);
        grunt.task.run('preprocess');
    });

最后,运行baseUrl任务,如下所示:

grunt baseUrl --rest.baseUrl='http://some.domain.net/public/whatever'

注意我放在一个后备的url,所以你也可以运行grunt baseUrl和咕噜将您的baseUrl设置为您定义的.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读