Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 角火种子&x2B;module.simpleLoginTools=ng离子型隐形衣问题_Angularjs_Firebase_Firebase Security_Ionic Framework - Fatal编程技术网

Angularjs 角火种子&x2B;module.simpleLoginTools=ng离子型隐形衣问题

Angularjs 角火种子&x2B;module.simpleLoginTools=ng离子型隐形衣问题,angularjs,firebase,firebase-security,ionic-framework,Angularjs,Firebase,Firebase Security,Ionic Framework,嗨&谢谢你的Firebase,太棒了 我正在写一本关于部署AngularJS应用程序的书&有一个Angularfire seed&Ionic框架的混搭版,它将服务器作为示例供读者部署。 一切都像香草Angularfire种子聊天应用程序一样工作,除了登录视图使用ng-斗篷指令以以下方式破坏登录表单 );创建帐户和取消按钮以及确认通行证输入 从上述元素,然后 createMode交互按预期工作,但表单不会 提交(显示“请输入电子邮件地址”错误) 如果我把ng斗篷留在这3个元素上,那么createM

嗨&谢谢你的Firebase,太棒了

我正在写一本关于部署AngularJS应用程序的书&有一个Angularfire seed&Ionic框架的混搭版,它将服务器作为示例供读者部署。 一切都像香草Angularfire种子聊天应用程序一样工作,除了登录视图使用ng-斗篷指令以以下方式破坏登录表单

);创建帐户和取消按钮以及确认通行证输入

  • 从上述元素,然后 createMode交互按预期工作,但表单不会 提交(显示“请输入电子邮件地址”错误)
  • 如果我把ng斗篷留在这3个元素上,那么createMode 交互失败&抛出“请输入电子邮件地址”错误 再说一遍
  • DevTools控制台中没有任何上述问题的错误&所有必要的依赖项都已就绪(根据)。我尝试删除了所有的Ionic视图代码,并将登录视图返回到种子版本&一切都按预期工作……除了我需要它在Ionic中工作之外

    我发现&;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp


    我的代码可以在上访问&一个部署的示例可以@

    访问,因此问题根本不是由simpleLoginTools引起的,它们工作得很好。这个问题是由Ionic大量使用我不知道的隔离作用域引起的

    $scope.data = {
            "email"      : null,
            "pass"       : null,
            "confirm"    : null,
            "createMode" : false
    }
    
    解决方案是将登录凭据嵌套在$scope.data对象中,然后修改登录函数以适应新的嵌套结构

    $scope.login = function(cb) {
            $scope.err = null;
            if( !$scope.data.email ) {
               $scope.err = 'Please enter an email address';
            }
            else if( !$scope.data.pass ) {
               $scope.err = 'Please enter a password';
            }
            else {
               loginService.login($scope.data.email, $scope.data.pass, function(err, user) {
                  $scope.err = err? err + '' : null;
                  if( !err ) {
                     cb && cb(user);
                  }
               });
            }
    };
    

    您可以尝试在simpleLoginTools.js中对代码进行注释,以查看是否是“提到的对ng斗篷的更改”导致了该问题。另外,你有没有检查爱奥尼亚是否对ng斗篷有任何作用?谢谢@Kato!原来这个问题是由Ionic创建了我不知道的隔离作用域引起的。simpleLoginTools现在工作得很好。听起来ionic正在解决即将发布的版本中关于隔离作用域的困惑。很高兴事情解决了!