Angular Bootstrap Progressbar无法动态分配类型

时间:2016-02-12 12:03:14

标签: angularjs twitter-bootstrap nested interpolation

我正在使用angular bootstrap进度条,并希望为每个插入的文件插入进度条。

插值符号设置为“{[{'和'}]}'。

    {% set barName = "formatFileName( item.file.name )" %}
    {% set typeName = "'progressType_" ~  form.vars.name ~ "_' + " ~ barName %}
    {% set readyValue = "{[{" ~ typeName ~ "}]}" %}

    <uib-progressbar
                class="progress-striped active"
                value="item.progress"
                type="{{ readyValue }}"
    >
        {[{ item.progress }]}%
    </uib-progressbar>

不仅如此,我希望能够根据是否分别改变每个酒吧的颜色  上传失败或成功,所以在我的控制器中,我在上传成功时执行以下操作(假设设置了$ scope.elementName):

    $scope.uploader.onSuccessItem = function(item, response, status, headers) {

        angular.forEach(response, function(elem, key) {
            var ind = $scope.formatFileName(key);
            if (typeof elem !== 'undefined' && elem.length > 0) {

                $scope['progressType_' + $scope.elementName + '_' + ind] = "danger";

                angular.forEach(elem, function(error) {
                    $scope.uploadErrors[item.file.name].push(error);
                });

            } else {
                $scope['progressType_' + $scope.elementName + '_' + ind]  = "success";
                $scope.formData[$scope.elementName].push(key);
            }
        });
    };

问题出现在树枝上,产生的字符串,即:

"{[{'progressType_formName_' + formatFileName( item.file.name )}]}" 

被内插到

"progressType_formName_fileName"

虽然,我非常需要的是

"{[{progressType_formName_fileName}]}"

以便我可以从控制器为此分配值。

我知道可能没有嵌套插值,无论如何它都无法正常工作。因此,如果有人知道另一种方法来实现这一点,任何提示将不胜感激。

提前致谢。

1 个答案:

答案 0 :(得分:-1)

使用Angular UI bootstrap - &gt;进度条(ui.bootstrap.progressbar)

有了这个,我就完成了所有进度吧dinamic :)更多信息here