Book Image

AngularJS Directives Cookbook

Book Image

AngularJS Directives Cookbook

Overview of this book

AngularJS directives are at the center of what makes it such an exciting – and important - web development framework. With directives, you can take greater control over HTML elements on your web pages – they ‘direct’ Angular’s HTML compiler to behave in the way you want it to. It makes building modern web applications a much more expressive experience, and allows you to focus more closely on improving the way that user interaction impacts the DOM and the way your app manages data. If you’re already using Angular, you probably recognize the power of directives to transform the way you understand and build your projects – but customizing and creating your own directives to harness AngularJS to its full potential can be more challenging. This cookbook shows you how to do just that – it’s a valuable resource that demonstrates how to use directives at every stage in the workflow. Packed with an extensive range of solutions and tips that AngularJS developers shouldn’t do without, you’ll find out how to make the most of directives. You’ll find recipes demonstrating how to build a number of different user interface components with directives, so you can take complete control over how users interact with your application. You’ll also learn how directives can simplify the way you work by creating reusable directives – by customizing them with Yeoman you can be confident that you’re application has the robust architecture that forms the bedrock of the best user experiences. You’ll also find recipes that will help you learn how to unit test directives, so you can be confident in the reliability and performance of your application. Whether you’re looking for guidance to dive deeper into AngularJS directives, or you want a reliable resource, relevant to today’s web development challenges, AngularJS Directives Cookbook delivers everything you need in an easily accessible way.
Table of Contents (16 chapters)
AngularJS Directives Cookbook
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Creating the jQuery UI draggable directive


In the jQuery world, simple interface components such as draggable are easily built, as jQuery UI provides us with all the necessary plugins to accomplish this task. In an AngularJS application, easy things must follow some steps, in this case custom directives.

Getting ready

We are still using the same code base as in the previous example.

How to do it…

  1. Let's append the draggable directive code to the homeCtrl.js file, right after the progressbar controller:

    .directive('draggable', function () {
      return {
        restrict: 'A',
        scope: {},
        link: function (scope, elem, attrs) {
          elem.draggable({
          revert: "invalid",
          });
        }
      };
    });
  2. Now, add the directive HTML code to home.html file, right after the progressbar div:

    <div class="drag ui-widget-content" draggable>
      <p>Draggable Content</p>
    </div>

How it works…

As you saw in the previous examples, we are manipulating the DOM of our AngularJS application using the...