Asset.script ViewHelper <f:asset.script>

ViewHelper to add JavaScript to the TYPO3 AssetCollector. Either a file or inline JavaScript can be added.

Examples

<f:asset.script identifier="identifier123" src="EXT:my_ext/Resources/Public/JavaScript/foo.js" />
<f:asset.script identifier="identifier123">
   alert('hello world');
</f:asset.script>
Copied!

Details

In the AssetCollector, the "identifier" attribute is used as a unique identifier. Thus, if assets are added multiple times using the same identifier, the asset will only be served once (the last added overrides previous assets).

Some available attributes are defaults but do not make sense for this ViewHelper. Relevant attributes specific for this ViewHelper are: async, crossorigin, defer, integrity, nomodule, nonce, referrerpolicy, src, type.

Source code

Go to the source code of this ViewHelper: Asset\ScriptViewHelper.php (GitHub).

Arguments

The following arguments are available for the asset.script ViewHelper:

additionalAttributes
Type
array
Additional tag attributes. They will be added directly to the resulting HTML tag.
data
Type
array
Additional data-* attributes. They will each be added with a "data-" prefix.
aria
Type
array
Additional aria-* attributes. They will each be added with a "aria-" prefix.
async
Type
bool
Define that the script will be fetched in parallel to parsing and evaluation.
defer
Type
bool
Define that the script is meant to be executed after the document has been parsed.
nomodule
Type
bool
Define that the script should not be executed in browsers that support ES2015 modules.
useNonce
Type
bool
Default
false
Whether to use the global nonce value
identifier
Type
string
Required
1
Use this identifier within templates to only inject your JS once, even though it is added multiple times.
priority
Type
boolean
Default
false
Define whether the JavaScript should be put in the <head> tag above-the-fold or somewhere in the body part.