SitePen: Creating and Enhancing Dojo Classes
You have probably noted over the past few months that I've been working a lot with the Dojo Toolkit. SitePen has been kind enough to allow me to guest blog about a Dojo topic I find very interesting: creating and enhancing Dojo classes. From the post:
Like all top-notch JavaScript toolkits, Dojo tries to make its classes as flexible as possible, knowing that users of the toolkit may have different ideas about how a given class or class method should work. Luckily, Dojo provides you a number of methods by which you can subclass or modify existing classes. Let's examine a few ways you can make Dojo classes exactly the way you like.
Click here to check it out!
![39 Shirts – Leaving Mozilla]()
In 2001 I had just graduated from a small town high school and headed off to a small town college. I found myself in the quaint computer lab where the substandard computers featured two browsers: Internet Explorer and Mozilla. It was this lab where I fell...
![Detect DOM Node Insertions with JavaScript and CSS Animations]()
I work with an awesome cast of developers at Mozilla, and one of them in Daniel Buchner. Daniel's shared with me an awesome strategy for detecting when nodes have been injected into a parent node without using the deprecated DOM Events API.
![Chris Coyier: Some Amazing Work on CodePen III]()
I'm back! David asked me to rope up some of my favorite stuff on CodePen again, which I both love doing, and wince at the thought of having to pick so few favorites. I like a ton of stuff on...
![LightFace: Facebook Lightbox for MooTools]()
One of the web components I've always loved has been Facebook's modal dialog. This "lightbox" isn't like others: no dark overlay, no obnoxious animating to size, and it doesn't try to do "too much." With Facebook's dialog in mind, I've created LightFace: a Facebook lightbox...
Hi,
Maybe you’ll be able to help me with understanding new way of class definition in new dojo. I’m using latest version of dojo. I try to define a few classes in separate files. Example (js/TwitterManager.js):
require([ "dojo/_base/declare", "dojo/request/script"], function( declare, script) { declare("TwitterManager", script, { // The default username username: "defaultUser", get: function() { script.get("http://search.twitter.com/search.json", { jsonp: "callback", query: {q: "#dojo"} }).then(function(response){ //we're only interested in response.results, so strip it off and return it return response.results; }); } });});Then I try to instantiate this class in main file (index.html):
require(["dojo/on", "dojo/dom", "dojo/query", "dojo/mouse", "dojo/domReady!"], function(on, dom, query, mouse) { var x = new TwitterManager(); var results = x.get(); });This code doesn’t work. But when I remove from class definition “request/script” module it works fine. I really need to use “script.get” method in this class. Of course all code might be put in index.html :) but I look for OOP approach in dojo 1.8.
Thanks