如何在angularjs中使用ui-router管理多个状态

时间:2018-11-21 09:33:47

标签: angularjs node.js angular-ui-router

我正在使用使用nodejs作为后端的angularjs的项目,为此我正在angularjs中构建一个单页应用程序(spa)。 因此,我需要您的帮助,因为有两种状态,例如状态A和它的子状态aa(与我的项目有关)。 所有状态共享一个位于主模板文件上的公共控制器, 好的。 现在,我要上传的文件代码是在子状态a模板文件中编写的,当我使用控制器的作用域访问该文件变量时,我将其未定义进行控制台。我不明白为什么我显示未定义,但是当我在子状态aa上单独应用控制器时,它将控制文件值。但是为什么这样做,我不想要,请有人帮我解决这个问题。

  

这是我的状态码aa,用于文件上传

<div>
<input type = "file" file-model = "avatarFile"/>
</div>

对于文件上传,我正在使用一条指令,该指令为我提供如下文件

app.directive('fileModel', ['$parse', function ($parse) {
    return {
        restrict: 'A',
        link: function (scope, element, attrs) {
            var model = $parse(attrs.fileModel);
            var modelSetter = model.assign;

            element.bind('change', function () {
                scope.$apply(function () {
                    modelSetter(scope, element[0].files[0]);
                });
            });
        }
    };
}]);
  

最后我的主要模板代码在这里

<html lang="en" ng-app="app">
<body ng-controller="lugbeeSPACtrl">
<div ui-view></div>
</body>
</html>

,我还想告诉您状态,模板也位于单独的html文件中。 如果需要任何帮助以重新理解该问题,请提供信息,但请解决我的问题。谢谢。

0 个答案:

没有答案