`directive`没有加载到`ng-view`

时间:2015-04-21 12:40:37

标签: angularjs

我正在加载我的控制器:

$routeProvider
            .when('/login', {
                templateUrl :   'js/scripts/views/login.html',
                controller:     'loginCont'
            })

工作正常。我决定在directive中添加login.html。像这样:

<h1>I am login here! {{message}} </h1> //message updates from controller
<div loginDir>Testing</div> //css not applied

最后我将loginDir.js添加到了我的main.html。

这是我的loginDir功能:

'use strict';

angular.module('myNewApp')
    .directive('loginDir', function () {
        return function (scope, element, attrs) {
            return {
                restrict:'A',
                link : function () {
                    console.log("link called", element); //not consoling
                    element.css({border:'1px solid red'});
                }
            }
        }
    });

任何人都知道我在这里做错了什么?

2 个答案:

答案 0 :(得分:2)

您必须替换<div loginDir>

通过

 <div login-dir>

您可以在此处获取官方文档:https://docs.angularjs.org/guide/directive

答案 1 :(得分:1)

错误地,就像工厂函数一样,我返回一个函数而不是返回一个对象。这是我的mupdate:

angular.module('myNewApp')
    .directive('loginDir', function () {
        return function (scope, element, attrs) { //wrong! need to remove
            return {
                restrict:'A',
                link : function () {
                    console.log("link called", element); //not consoling
                    element.css({border:'1px solid red'});
                }
            }
        } //need to remove.
    });