指令未加载

时间:2016-11-18 23:56:20

标签: angularjs

我的指令有问题。

指令和控制器的js文件包含在index.html中,路径正确。 控制台中没有给出错误,但我的标签没有呈现。任何帮助都会被贬低。 以下是我的一些代码

loginForm.js

(function () {
angular
    .module('sysConApp')
    .directive('loginForm', [
        function () {
            return {
                restrict: 'E',
                scope: {},
                templateUrl: 'scripts/directives/loginForm/view/loginFormView.html',
                controller: 'LoginFormController',
                replace: 'true'
            }
        }
    ]);
});

loginFormController.js

angular.module('sysConApp')
.controller('LoginFormController', ['$scope', '$state', 'AuthService', 'userProfile',
    function ($scope, $state, AuthService, userProfile) {/*Some codes*/}]);

loginFormView.html

<form class="loginForm">
    <img class="login-logo"
         src="data:image/png;base64,i..." alt="Logo SysCon">
    <input id="inputEmail"
           type="email"
           class="form-control"
           placeholder="E-mail"
           ng-model="username"
           required
           autofocus>
    <input type="password"
           id="inputPassword"
           ng-model="password"
           class="form-control"
           placeholder="Senha"
           required>
    <span ng-show="loginError && loginForm.$invalid"
          class="label label-danger">
        <b>Erro ao realizar login.</b> Favor tente novamente.
    </span>
    <button class="btn btn-lg btn-block btn-signin"
            ng-disabled="loginForm.$invalid"
            ng-class="{'btn-default':loginForm.$invalid,'btn-success':loginForm.$valid}"
            ng-click="logIn()"
            type="submit">
        Log in
    </button>
</form>

的login.html

<div class="card card-container">
    <login-form></login-form>
</div>

1 个答案:

答案 0 :(得分:5)

你的代码的问题是你的IIFE没有被调用,你只是在创建函数但从不调用它。

你有这个:

(function() {
//...
})();

您必须将其更改为:

(function() {
  angular
    .module('sysConApp')
    .directive('loginForm', [
      function() {
        return {
          restrict: 'E',
          scope: {},
          templateUrl: 'scripts/directives/loginForm/view/loginFormView.html',
          controller: 'LoginFormController',
          replace: true,
          link: function(){console.log('whoray');}
        }
      }
    ]);
})();

完整代码:

{{1}}