Hi Eric, One thing that is going to bite you is styling. If you don't use the Polymer.dom APIs, the children added imperatively won't have the correct style-scope class added, so you may see styling anomalies. (For example, those children will behave as if they aren't in shadow DOM, and be styled by document-level CSS.)
There is an scopeSubtree method that may help you here. It's designed for situations where you have a plugin or third-party library that just wants to squirt some DOM nodes into a container. You'd do something like this: this.scopeSubtree(myContainerNode, observe); If observe is true, it creates a mutation observer and scopes descendants as they're added and removed from the container. If observe is false, only the current descendants are scoped. This is certainly not a cure-all, but it may help in certain cases. OK Arthur On Wed, May 20, 2015 at 9:51 AM, Eric Eslinger <eric.eslin...@gmail.com> wrote: > Hmm, the good news is that just shutting my eyes, going "la la la" and > pretending that Polymer.dom doesn't exist seems to work just fine. I built > a test angular application that uses paper-drawer-panel, > paper-header-panel, and paper-icon-button to add paper-icon-buttons to a > list on a timeout using angular's $interval callback to append items to an > array and angular's ng-repeat and ng-if directives to manipulate the DOM. > > My hypothesis here is that I'm only ever really adding new child nodes in > the already-distributed DOM elements. > > I whipped up a simple bunch of test cases for most of my UI elements here: > > https://github.com/ericeslinger/paulAnka > > in the event anyone cares to keep score at home. I'd love someone to point > out areas where the Polymer shady DOM is going to bite me in the .. well > any place would be a bad place to be bitten. If I can get this working for > all of the polymer elements I currently use in production, I'll move > forward on it. > > e > > On Tue, May 19, 2015 at 12:48 PM 'Steve Orvell' via Polymer < > polymer-dev@googlegroups.com> wrote: > >> We have experimented with patching dom traversal and mutation api's, and >> there's an experimental import in Polymer that does this. It can let some >> libraries interoperate more smoothly with Shady DOM powered elements that, >> for example, perform distribution. We're continuing to work on it and >> explore if it should be integrated out of the box or be available as an opt >> in layer. >> >> On Tue, May 19, 2015 at 6:09 AM, <jim.j.si...@gmail.com> wrote: >> >>> Was there a reason that the built-in versions of the Polymer.dom API >>> couldn't be monkeypatched? In other words, why not make >>> document.querySelector or element.querySelector behave like Polymer.dom's >>> version? Wouldn't this increase interoperability with third party >>> libraries? >>> >>> Follow Polymer on Google+: plus.google.com/107187849809354688692 >>> --- >>> You received this message because you are subscribed to the Google >>> Groups "Polymer" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to polymer-dev+unsubscr...@googlegroups.com. >>> To view this discussion on the web visit >>> https://groups.google.com/d/msgid/polymer-dev/2ed4c38f-8544-4a29-b79d-aad0ee0c40aa%40googlegroups.com >>> . >>> For more options, visit https://groups.google.com/d/optout. >>> >> >> Follow Polymer on Google+: plus.google.com/107187849809354688692 >> --- >> You received this message because you are subscribed to the Google Groups >> "Polymer" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to polymer-dev+unsubscr...@googlegroups.com. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/polymer-dev/CA%2BrMWZhJJtkY_jKm8mSaLavGj3tRSk8Gonka%3DVfgEdD%2BoUaBeQ%40mail.gmail.com >> <https://groups.google.com/d/msgid/polymer-dev/CA%2BrMWZhJJtkY_jKm8mSaLavGj3tRSk8Gonka%3DVfgEdD%2BoUaBeQ%40mail.gmail.com?utm_medium=email&utm_source=footer> >> . >> For more options, visit https://groups.google.com/d/optout. >> > Follow Polymer on Google+: plus.google.com/107187849809354688692 > --- > You received this message because you are subscribed to the Google Groups > "Polymer" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to polymer-dev+unsubscr...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/polymer-dev/CABsi40%2Bf2zvKe3annQgqer8Pq06wwLGM3xgFYt7af%2Be5cbDZVw%40mail.gmail.com > <https://groups.google.com/d/msgid/polymer-dev/CABsi40%2Bf2zvKe3annQgqer8Pq06wwLGM3xgFYt7af%2Be5cbDZVw%40mail.gmail.com?utm_medium=email&utm_source=footer> > . > > For more options, visit https://groups.google.com/d/optout. > Follow Polymer on Google+: plus.google.com/107187849809354688692 --- You received this message because you are subscribed to the Google Groups "Polymer" group. To unsubscribe from this group and stop receiving emails from it, send an email to polymer-dev+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/polymer-dev/CADSbU_ycm4xBm%2BB68fcBf2W%2BSEyz593VZd9mdTNvs0K%3DU-QVpA%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.