4 ms·
Ugh what about our 5 yr old project written in angularjs by about 20 different devs - most of whom are no longer on the project - and is still getting new featu
by crescentfresh 7y ago
Ugh what about our 5 yr old project written in angularjs by about 20 different devs - most of whom are no longer on the project - and is still getting new feature requests that get pushed through the development pipeline and no one has any time to figure out how to begin integrating Vue (regardless of the Vue expertise).
- tenaciousDaniel 7y agoI'm in a similar boat. Our project was angularjs (angular 1), and we've been transitioning to React. I don't know Vue, and I don't know your setup, but what we opted for was: 1. Building a foundation in Vue/React. 2. Create an iframe component. 3. Load the angularjs app into the iframe. 4. Build a messaging system to notify the parent app of state changes. 5. Build a system to show/hide the angular app depending on the URL or view. This method worked well for us.
- mcv 7y agoYeah, my project was fairly new. That helps a lot. I could simply drop everything and rewrite from scratch. Templates were easy to translate from Angular to Vue. But converting a large, old project is always going to be hard. You either need a way to mix two different frameworks, which is going to be messy, or do a complete rewrite, which is a massive amount of work.
- MiniGod 7y agoDid this recently. We knew we wouldn't be able to rewrite everything, so we are writing new pages in Vue (and porting the old ones slowly). We add them to the angular router with a controller that creates a `new Vue` instance replacing the DOM element. This let's us start using Vue today and slowly phase out AngularJS.
- rodinia 7y agoDealt with something similar at my old company. If you have the option to go page by page, this may work for you. The original site was in ColdFusion, and we slowly reimplemented it in AngularJS (around 2014.) We used an NGINX whitelist that had all route permutations that needed to go to the AngularJS site send it to that container, and everything else went to the ColdFusion environment. Over time, the major components of the site was converted to Angular and the users were none the wiser (besides noticing that the average load time had decreased by THIRTEEN SECONDS, no I am not kidding.) The same pattern at my current role has worked while migrating an AngularJS app to Vue.