![]() Note: all of this was using embroider v0.40.0.īased on my overall experience, I would qualify embroider as late-stage alpha or early-stage beta quality software. We considered Ember Engines, but opted to wait for embroider to mature.which it has! We did not have a solution for splitting our code across routes. Using module aliasing, null-loader, and string-replace-loader in the webpack config that we supplied to ember-auto-import, we were able to strip out a lot of unneeded code, but at the cost of significant up-front effort and maintenance cost as we upgrade those third-party libraries. Our two primary goals in moving to embroider were to be able to take advantage of tree-shaking and code splitting across routes, to keep our code-size-related memory footprint under control without incurring high up-front engineering costs or ongoing maintenance costs.īefore moving to embroider, we were able to do quite a bit of "manual tree-shaking" of third-party non-Ember libraries. Statistics on our app (line counts done using cloc): We've found that many of these bundle a lot of extra code that we don't actually execute or need. We also integrate quite a few third-party libraries for our core editor technology, for our core diagramming technology, and various other data analysis and transformations such as natural language processing. This means that there's a pretty strong association between routes and windows - the prose window will never visit any of the drawings routes, and vice versa - and also that we typically have several copies of the application loaded into memory at a time (one per window). When an attorney opens a patent application file, they will have their primary prose window, and then also might simultaneously open a drawings window and a tools window (and there are several other special-purpose windows like a splash screen and a landing page). Rowan Patents brings together the prose and drawings, along with a number of other efficiency tools, into a single multi-window desktop application. Most patents consist of a bunch of pages of prose, and some pages of drawings, so most patent attorneys use Microsoft Word and Visio for their patent drafting. I work at Rowan Patents, and our main Ember app is a desktop ( ember-electron) application for patent attorneys to use to draft patent applications - somewhat analogous to an IDE like VSCode. Hopefully reading about my experience will help others through the same process, and help accelerate polishing and adoption of embroider within the Ember ecosystem. We know the afterOptionsComponent has access to the data that the has.I spent the last 3.5 weeks or so switching our primary app over to using embroider, and getting it working with all the optimized settings plus code splitting across routes. This component can be a button that sends an action higher up and when we call that action we toggle the modal. ![]() Makes sense right? Then we need a way to toggle the modal from within the create component. The idea is to have the modal outside the select component. But this one is destroyed as well as all the components it holds inside. So when we click the modal trigger, the modal is rendered inside the dropdown component. That's because the select dropdown is destroyed on focus out. Well, actually it is rendered and destroyed almost instantly. Now when we click the create user button we realize the modal is not rendered.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |