Esempio n. 1
0
    /// <summary>
    /// OnAfterRenderAsync 方法
    /// </summary>
    /// <param name="firstRender"></param>
    /// <returns></returns>
    protected override async Task OnAfterRenderAsync(bool firstRender)
    {
        await base.OnAfterRenderAsync(firstRender);

        if (firstRender)
        {
            var methodGetPluginAttrs  = "";
            var methodClickPluginItem = "";
            if (CustomerToolbarButtons.Any())
            {
                methodGetPluginAttrs  = nameof(GetPluginAttrs);
                methodClickPluginItem = nameof(ClickPluginItem);
            }

            Module = await JSRuntime.LoadModule <Editor>("./_content/BootstrapBlazor.SummerNote/js/bootstrap.blazor.editor.min.js", this, false);

            await Module.InvokeVoidAsync("bb_editor", EditorElement, methodGetPluginAttrs, methodClickPluginItem, nameof(Update), Height, Value ?? "", Language);
        }
        else if (_renderValue)
        {
            _renderValue = false;
            if (Module != null)
            {
                await Module.InvokeVoidAsync("bb_editor_code", EditorElement, Value ?? "");
            }
        }
    }
Esempio n. 2
0
        public Task <List <object> > GetToolBar()
        {
            var list = new List <object>(50);

            list.AddRange(ToolbarItems);

            var itemList = new List <object>();

            itemList.Add("custom");
            itemList.Add(CustomerToolbarButtons.Select(p => p.ButtonName).ToList());
            list.Add(itemList);

            return(Task.FromResult(list));
        }
Esempio n. 3
0
        /// <summary>
        /// OnAfterRenderAsync 方法
        /// </summary>
        /// <param name="firstRender"></param>
        /// <returns></returns>
        protected override async Task OnAfterRenderAsync(bool firstRender)
        {
            await base.OnAfterRenderAsync(firstRender);

            if (firstRender)
            {
                Interope = new JSInterop <Editor>(JSRuntime);
                var methodGetPluginAttrs  = "";
                var methodClickPluginItem = "";
                if (CustomerToolbarButtons.Any())
                {
                    methodGetPluginAttrs  = nameof(GetPluginAttrs);
                    methodClickPluginItem = nameof(ClickPluginItem);
                }
                await Interope.Invoke(this, EditorElement, "bb_editor", methodGetPluginAttrs, methodClickPluginItem, nameof(Update), Height, Value ?? "");
            }
            if (_renderValue)
            {
                _renderValue = false;
                await JSRuntime.InvokeVoidAsync(EditorElement, "bb_editor", "code", "", "", "", "", Value ?? "");
            }
        }