Javascript 尝试在Angular(Blur Admin)中国际化adf小部件的标题和描述

Javascript 尝试在Angular(Blur Admin)中国际化adf小部件的标题和描述,javascript,angularjs,Javascript,Angularjs,是否可以翻译adf wiget的标题和描述 我尝试过类似的方法,但没有成功: angular.module('adf.widget.myWidget', ['adf.provider']) .config(function(dashboardProvider, $filter){ dashboardProvider .widget('myWidget', { title: $filter('translate')('MYWIDGET.NAME'),

是否可以翻译adf wiget的标题和描述

我尝试过类似的方法,但没有成功:

angular.module('adf.widget.myWidget', ['adf.provider'])
  .config(function(dashboardProvider, $filter){
    dashboardProvider
      .widget('myWidget', {
        title: $filter('translate')('MYWIDGET.NAME'),               
        description: $filter('translate')('MYWIDGET.DESCRIPTION'), 
        templateUrl: '{widgetsPath}/myWidget/src/view.html',
        controller: 'myWidgetCtrl',
        edit: {
          templateUrl: '{widgetsPath}/myWidget/src/edit.html'
        }
      });
  })
  .Controller [...]
或者有没有一种方法可以使用$filter更新控制器中的这些信息

非常感谢

//编辑:

我尝试了其他解决方案,但仍然无效:

angular.module('adf.widget.myWidget', ['adf.provider'])
  .config(function(dashboardProvider){
    function getName($filter) { var dcName = $filter('translate')('MYWIDGET.NAME'); return dcName; };
    dashboardProvider
      .widget('myWidget', {
        title: getName(),
        description: 'test',
        templateUrl: '{widgetsPath}/myWidget/src/view.html',
        controller: 'myWidgetCtrl',
        edit: {
          templateUrl: '{widgetsPath}/myWidget/src/edit.html'
        }
      });
  })

MYWIDGET应该定义为一个常量,其名称和描述属性都有值,然后注入配置块,就像注入$filter一样


看一看如何创建常量这里是一个如何使用解析块的示例

angular.module('adf.widget.myWidget', ['adf.provider'])
  .config(function(dashboardProvider, MYWIDGET){
    dashboardProvider
      .widget('myWidget', { 
        templateUrl: '{widgetsPath}/myWidget/src/view.html',
        controller: 'myWidgetCtrl',
        edit: {
          templateUrl: '{widgetsPath}/myWidget/src/edit.html'
        },
        resolve: {
        description: function ($filter) {
          return $filter('translate')(MYWIDGET.DESCRIPTION)
         },
        name : function ($filter) {
         return $filter('translate')(MYWIDGET.NAME)
        }
         }
      });
  })

然后在您的控制器中,将翻译后的
名称
说明
值作为普通可注入项注入

我通过翻译自定义模板中的值解决了这个问题

dashboardProvider.customWidgetTemplatePath('src/...pathToTemplate')
我也使用自定义模板的所有编辑模板,如editTemplateUrl等


(删除了重复的问题.)

MYWIDGET及其值在lang_de-de.json和lang_en-US.json中定义。我已经尝试注入$filter,但是如果我像我展示的那样这样做,我将得到以下错误:[$injector:modulerr]未能实例化模块BlurAdmin,原因是:。。。还有许多其他错误。此外,您不能将$filter注入配置块,angular不支持将服务注入配置块。你可以试着在一个解析块中这样做,你能给我举个例子吗?角度对我来说是很多新东西。:-)我发现了这个:但是我真的不知道怎么做。嗨,谢谢。我没有错误,但它不起作用。。。名称和描述不再显示在小部件中。使用其他解决方案更新了我的问题,但该解决方案不起作用….\uuuuuuu。