InlineScript

in namespace DotVVM.Framework.Controls

Renders a script that is executed when the DotVVM framework is loaded.

Usage & Scenarios

Renders a script that is executed when the DotVVM framework is loaded.

Sample 1: Basic InlineScript

The content of the InlineScript control is rendered as javascript in the page.

The framework adds a global object dotvvm which can be used to access client-side features. You can use the following events fired by the framework.

  • init: Executed when the DotVVM scripts and all required resources are loaded and the viewmodel is applied to the page.
  • beforePostback: Executed before the postback is sent to the server.
  • afterPostback: Executed after the postback response is received from the server.
  • error: Executed when the postback fails due to a some error on a server.
  • spaNavigating: Executed when you leave some page in the SPA container.
  • spaNavigated: Executed when you enter some page in the SPA container.
<dot:InlineScript>
  dotvvm.events.init.subscribe(function() { alert("Page loaded"); });
</dot:InlineScript>

Sample 2: Custom Error Handler

If the postback fails, you can invoke your custom code - e.g. display a message to the user.

@viewModel DotvvmWeb.Views.Docs.Controls.builtin.InlineScript.sample2.ViewModel, DotvvmWeb

<dot:Button Text="Sample Button" Click="{command: NeverEverRunThis()}" />

<!-- put inline script anywhere in the page -->
<dot:InlineScript>
	
	dotvvm.events.error.subscribe(function(args) {
		alert("Custom error handler!");
		args.handled = true;
	});
</dot:InlineScript>
using System;
using System.Threading;
using DotVVM.Framework.ViewModel;

namespace DotvvmWeb.Views.Docs.Controls.builtin.InlineScript.sample2
{
    public class ViewModel
    {
        public void NeverEverRunThis()
        {
            throw new Exception("This method was called from View Model.");
        }

    }
}

Properties

Name Type Description Notes Default Value
property icon ClientIDMode ClientIDMode Gets or sets the client ID generation algorithm.
attribute
inner element
static value
bindable
default
Static
property icon DataContext Object Gets or sets a data context for the control and its children. All value and command bindings are evaluated in context of this value.
attribute
inner element
static value
bindable
default
property icon Dependencies String Gets or sets the comma-separated list of resources that should be loaded before this script is executed.
attribute
inner element
static value
bindable
default
dotvvm
property icon ID String Gets or sets the unique control ID.
attribute
inner element
static value
bindable
default
property icon Script String
attribute
inner element
static value
bindable
default

HTML produced by the control