I don't want to bog the list down with my javascript naivete, but the full fix to dojo/on.js is something like this:
if (type.call && !(((typeof type) === "string") || (type instanceof String))){... On Wednesday, November 28, 2012 9:15:11 PM UTC-8, Brian Nelson wrote: > > ok. I've had some time to look into this now and have figured out a few > things. > > 1. This is not due to calling the DGrid constructor from clojurescript. It > occurs even when I call the DGrid constructor from straight javascript > code. So it doesn't have to do with the clojurescript code calling the > constructor. > > 2. The error goes away if I don't require cljs.core. If cljs.core is > required then the grid constructor ends up calling back into some code in > cljs.core, which is where the error occurs. > > So I'm a little further down the road but still don't know exactly why > doing a goog.require("cljs.core") causes cljs.core to receive events from > the DGrid constructor. Digging in with my javascript debugger and will > update this as I find out more information. > > > > On Monday, November 19, 2012 11:15:54 PM UTC-6, Brian Nelson wrote: >> >> Hi, >> >> I'm brand new to ClojureScript and have been trying to get myself >> familiarized with it's javascript interop capabilities by implementing >> the Dojo toolkit tutorials. I've successfully implemented several of >> the tutorials, but now I've run into something that I can't figure out >> and am looking for someone to point me in the right direction. >> >> I am calling the DGrid(Dojo grid) constructor using the function >> maingrid >> >> (ns couchadmin.core >> (:use [jayq.util :only [clj->js]]) >> (:require [clojure.browser.repl :as repl])) >> >> (defn greet [dom fx] >> (let [element (.byId dom "greetingcljs")] >> (set! (. element -innerHTML) "Hello from Dojo using >> ClojureScript") >> (.play (.slideTo fx (clj->js {:top 200 :left 200 :node >> element}))))) >> >> (defn maingrid [dom grd] >> (do >> >> (grd. (clj->js {:columns (clj->js {:first "First Name"})}) "grid") >> (js/alert "hello world"))) >> >> (defn ^:export main [] >> (comment (repl/connect "http://localhost:9000/repl")) >> (comment (js/require (array "dojo/dom" "dojo/fx" "dojo/domReady!") >> greet)) >> (js/require (array "dojo/dom" "dgrid/Grid" "dojo/domReady!") >> maingrid)) >> >> >> When the page is loaded the grid is constructed, but afterwards I see >> the following javascript exception >> >> Uncaught Error: No protocol method ILookup.-lookup defined for >> type object: [object HTMLDivElement] >> >> I'm wondering what this message is indicating. Did I call the >> constructor incorrectly? Is this an incompatibility with Dojo? Do I >> need to implement ILookup somehow? Any help would be greatly >> appreciated. >> >> Brian >> > -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en