How do you build a custom Skuid component that wraps Visualforce Standard Components?

Hi Stephen,

Adding Visualforce components to Skuid can be pretty tricky.  Here are a couple issues.

1. Certain components (like apex:tab) use an old Javascript library called Prototype.js. This library actually overwrites certain aspects of Javascript to behave differently than they normally do, causing Skuid to break.

2. Any Visualforce page that has ViewState, uses an actionFunction, or uses a rerender, will cause the page to reload.  As soon as an actionFunction or rerender happens, Visualforce will take over the whole page and the rest of your Skuid page is gone.

The reason the chatter component works is that is doesn’t use any of these Visualforce features.  It is much more Javascript heavy. (A lot like Skuid).  Flows do not work in this manner and when we’ve tried to add them they break the page.

Iframes are the best way to get around all these issues.  If the Visualforce page is running in an iframe, they run in a completely different context and typically do not interfere with how Skuid works.

Right now, I don’t think it would be feasible to build a component like Skuid’s social component as a custom Skuid component, as it uses quite a bit of internal only functionality.  It’s on our list to add the newsfeed as an item to the social component though.  Also hooking onComplete to a snippet or the action framework is a great idea.  I’ll put that on the list as well.