Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/395.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
Javascript Flash消息在angularJS中不起作用_Javascript_Angularjs - Fatal编程技术网

Javascript Flash消息在angularJS中不起作用

Javascript Flash消息在angularJS中不起作用,javascript,angularjs,Javascript,Angularjs,我使用angularJS Flash消息来显示错误消息,但在控制台中得到这个错误。我也尝试过angularjs以前的版本,但无法解决这个问题 angular.js:38 Uncaught Error: [$injector:modulerr] http://errors.angularjs.org/1.4.8/$injector/modulerr?p0=MainApp&p1=Error%3A…ogleapis.com%2Fajax%2Flibs%2Fangularjs%2F1.4.8%2

我使用angularJS Flash消息来显示错误消息,但在控制台中得到这个错误。我也尝试过angularjs以前的版本,但无法解决这个问题

angular.js:38 Uncaught Error: [$injector:modulerr] http://errors.angularjs.org/1.4.8/$injector/modulerr?p0=MainApp&p1=Error%3A…ogleapis.com%2Fajax%2Flibs%2Fangularjs%2F1.4.8%2Fangular.min.js%3A20%3A274)
at angular.js:38
at angular.js:4458
at n (angular.js:340)
at g (angular.js:4419)
at eb (angular.js:4344)
at c (angular.js:1676)
at yc (angular.js:1697)
at Zd (angular.js:1591)
at angular.js:29013
at HTMLDocument.b (angular.js:3057)
角码是

   var app = angular.module('MainApp',["ngFlash"]);
app.controller('Appctrl',['Flash','$scope','$http',function($scope,$http,Flash) {
  $scope.RegisterUser = function(){
     if($scope.register.username == undefined || $scope.register.email == undefined || $scope.register.password == undefined){
       var message = 'please enter correct information.';
       Flash.create('success', message);
     }
  }
}])
html:

    <!doctype html>
<html>
<head>
  <title>DNS </title>
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <!-- Angular Material style sheet -->
  <link rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/angular_material/1.1.0/angular-material.min.css">
  <!-- Angular Material requires Angular.js Libraries -->
  <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
  <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.5/angular-animate.min.js"></script>
  <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.5/angular-aria.min.js"></script>
  <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.5/angular-messages.min.js"></script>
  <!-- Angular Material Library -->
  <script src="https://ajax.googleapis.com/ajax/libs/angular_material/1.1.0/angular-material.min.js"></script>
  <!-- bootstrap link-->
  <!-- Latest compiled and minified CSS -->
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
  <!-- jQuery library -->
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
  <!-- Latest compiled JavaScript -->
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
   <script src="/controller/controller.js"></script>
</head>
<body ng-app="MainApp" ng-controller="Appctrl" >
<div class="container"  >
    <h1><small>Welcome to domains360.net</small></h1>
</div>

<div class="container">
  <flash-message   duration="5000" show-close="true" on-dismiss="myCallback(flash);" ></flash-message>
  <h3><small>Register here</small></h3>
  <form method="post">
    <label for="name" >User Name</label>
    <input type="text" ng-model="register.username" name="username" class="form-control">
    <label for="email" >Email:</label>
    <input type="email" name="email" ng-model="register.email" class="form-control">
    <label for="password">Password</label>
    <input type="password" name="password" ng-model="register.password" class="form-control"/>
    <input type="button" ng-click="RegisterUser();" class="form-control btn btn-success"   value="Sign up">
  </form>
</div>

<div class="container">
  <h3><small>Login Here</small></h3>
  <form method="post" action="/user/authenticate">
    <label for="email" >Email:</label>
    <input type="email" name="email" class="form-control">
    <label for="password">Password</label>
    <input type="password" name="password" class="form-control"/>
    <div class="alert-danger"><%=messages%></div>
    <input type="submit" class="form-control btn btn-success "  value="Sign In">
  </form>
</div>

</body>
</html>

域名服务器
欢迎来到域名360.net
在这里注册
用户名
电邮:
密码
在这里登录
电邮:
密码
我哪里出错了,或者我哪里错了,请让我知道。
谢谢。

您必须安装插件才能使用其功能。更多信息。另外,更改控制器中的顺序

app.controller('Appctrl',['Flash','$scope','$http',function(Flash,$scope,$http) {
  $scope.RegisterUser = function(){
     if($scope.register.username == undefined || $scope.register.email == undefined || $scope.register.password == undefined){
       var message = 'please enter correct information.';
       Flash.create('success', message);
     }
  }
}])

问题是您缺少角闪烁的参考。此外,在注入后,确保按如下正确顺序注入参数

app.controller('Appctrl',['$scope','$http','Flash',function($scope,$http,Flash) {

看起来HTML中没有包含
角闪烁的
。然而,答案@Vivz posted也是一个问题,在您修复脚本标记后会出现这个问题……angular flash的参考???@sachinyadav