> ## Documentation Index
> Fetch the complete documentation index at: https://doc.lucidworks.com/llms.txt
> Use this file to discover all available pages before exploring further.

# dynamic:styling

export const LwTemplate = ({title = "Key questions to get you started", icon = "sparkles", cta = "Powered by Agent Studio", linkHref = "https://lucidworks.com/demo/?utm_source=docs&utm_medium=referral&utm_campaign=docs_cta_ai"}) => {
  const [isLoaded, setIsLoaded] = useState(false);
  useEffect(() => {
    const timer = setTimeout(() => {
      setIsLoaded(true);
    }, 500);
    return () => clearTimeout(timer);
  }, []);
  return <div className="lw-template-container">
      <Card title={title} icon={icon}>
        {isLoaded && <span dangerouslySetInnerHTML={{
    __html: `<lw-template id="a029c1a9-28be-427e-b0e1-5d918920246a"></lw-template
            >`
  }} />}
        <Link href={linkHref} className="agent-studio-link text-left text-gray-600 gap-2 dark:text-gray-400 text-sm font-medium flex flex-row items-center hover:text-primary dark:hover:text-primary-light group-hover:text-primary group-hover:dark:text-primary-light">Powered by Lucidworks Agent Studio</Link>
      </Card>
    </div>;
};

[localhost link]: http://localhost:3000/docs/4/app-studio/reference/tags/lightning.directive.dynamicStyling

[mintlify link]: https://doc.lucidworks.com/docs/4/app-studio/reference/tags/lightning.directive.dynamicStyling

[old doc.lw link]: https://doc.lucidworks.com/app-studio/4.2/1184

<LwTemplate />

## Description

Works the same as the styling directive but watches for updates. This
should only be used if it is required that the styling classes are
updated after their initial value to improve performance.

## Usage

as attribute

```xml wrap  theme={"dark"}
<ANY dynamic-styling="{string}">
   ...
</ANY>
```

#### Parameters

| Param          | Type       | Details                                            |
| -------------- | ---------- | -------------------------------------------------- |
| dynamicStyling | **string** | separated string of styles to apply to the element |

## Example

#### Source

```xml wrap  theme={"dark"}
<layout:box dynamic-styling="{{styles}}">
    <button styling="button" ng-click="toggleStyles()">Toggle box styling</button>
</layout:box>
```

```js wrap  theme={"dark"}
angular.module('lightning')
roller('ExampleController', ['$scope', function($scope) {

            $scope.styles = 'bg-raspberry text-raspberry-dark';

            $scope.toggleStyles = function () {
                if ($scope.styles == 'bg-raspberry text-raspberry-dark') {
                    $scope.styles = 'bg-sunflower text-sunflower-dark';
                } else {
                    $scope.styles = 'bg-raspberry text-raspberry-dark';
                }

            };

        }]);
```

#### Result

<img src="https://mintcdn.com/lucidworks/_JCWsGwGCZxJia7w/assets/images/app-studio/as-examples/tags/dynamicStyling.png?fit=max&auto=format&n=_JCWsGwGCZxJia7w&q=85&s=da546b417189e1a76fe9aa2554221648" alt="Result" width="1024" height="75" data-path="assets/images/app-studio/as-examples/tags/dynamicStyling.png" />
