Trigger TagHelper de otro TagHelper
Me gustaría activar el stockScriptTagHelper
(ver fuente en GitHub) para que emule laasp-append-version="true"
atributo.
Sé que la forma correcta de usar esto es simplemente cambiar esto:
<script src="somefile.js"></script>
a esto
<script src="somefile.js" asp-append-version="true"></script>
Este proceso es muy similar para versionar CSS incluye e imágenes LinkTagHelper
yImageTagHelper
).
Dado que tengo muchos scripts, hojas de estilo e imágenes incluidas, me gustaría automatizar un poco las cosas. Entonces, en lugar de agregarasp-append-version="true"
en todos y cada uno de los elementos HTML, prefiero crear un TagHelper personalizado que haga esto por mí.
quí está el problema: no funciona.
Actualmente, mi TagHelper cubre soloscript
etiquetas y se ve así:
[HtmlTargetElement("script", Attributes = "src")]
public class TestTagHelper : TagHelper
{
public override int Order => int.MinValue;
public override void Process(TagHelperContext context, TagHelperOutput output)
{
if(!context.AllAttributes.ContainsName("asp-append-version"))
{
output.Attributes.SetAttribute("asp-append-version", "true");
}
}
}
Pero en lugar de activar la @ predeterminaScriptTagHelper
, literalmente genera elasp-append-version="true"
al HTML de salida. También he configurado laOrder
propiedad de INT_MIN, para que se active antes que cualquier otro Tag Helpers, pero aún así no funciona.
¿Hay alguna manera de hacer que esto funcione?