为Mvc添加新的@abp/jstree标准库.

Posted Abp Framework

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为Mvc添加新的@abp/jstree标准库.相关的知识,希望对你有一定的参考价值。

ABP是一个模块化平台. 每个开发人员都可以创建模块, 模块应该在兼容稳定状态下协同工作.

一个挑战是依赖NPM包的版本. 如果两个不同的模块使用相同的javascript库但其不同(并且可能不兼容)的版本会怎样.

为了解决版本问题, 我们创建了一套标准包, 这取决于一些常见的第三方库. 一些示例包是@abp/jquery, @ abp/bootstrap和@abp/font-awesome. 你可以从Github存储库中查看列表.

标准包的好处是:

  • 它取决于包装的标准版本. 取决于此包是安全,因为所有模块都依赖于相同的版本.

  • 它包含将库资源(js,css,img...文件)从node_modules文件夹复制到wwwroot/libs文件夹的gulp任务. 有关更多信息, 请参阅 映射库资源 部分.


@abp/jstree 标准库.


JsTreeScriptContributor.cs

namespace Volo.Abp.AspNetCore.Mvc.UI.Packages.JsTree{ [DependsOn(typeof(JQueryScriptContributor))] public class JsTreeScriptContributor : BundleContributor { public override void ConfigureBundle(BundleConfigurationContext context) { context.Files.AddIfNotContains("/libs/jstree/jstree.min.js"); } }}


JsTreeOptions.cs

namespace Volo.Abp.AspNetCore.Mvc.UI.Packages.JsTree{ public class JsTreeOptions { /// <summary> /// Path of the style file for the JsTree library. /// Setting to null ignores the style file. ///  /// Default value: "/libs/jstree/themes/default/style.min.css". /// </summary> public string StylePath { get; set; } = "/libs/jstree/themes/default/style.min.css"; }}


JsTreeStyleContributor.cs

namespace Volo.Abp.AspNetCore.Mvc.UI.Packages.JsTree{ public class JsTreeStyleContributor : BundleContributor { public override void ConfigureBundle(BundleConfigurationContext context) { var options = context .ServiceProvider .GetRequiredService<IOptions<JsTreeOptions>>() .Value;
if (options.StylePath.IsNullOrEmpty()) { return; }
context.Files.AddIfNotContains(options.StylePath); } }}


 npm/packs/jstree/package.json 

{ "version": "2.7.0", "name": "@abp/jstree", "publishConfig": { "access": "public" }, "dependencies": { "@abp/jquery": "^2.7.0", "jstree": "^3.3.9" }, "gitHead": "0ea3895f3b0b489e3ea81fc88f8f0896b22b61bd"}


npm/packs/jstree/abp.resourcemapping.js

module.exports = { mappings: { "@node_modules/jstree/dist/**/*.*": "@libs/jstree/" }}


以上是关于为Mvc添加新的@abp/jstree标准库.的主要内容,如果未能解决你的问题,请参考以下文章

我无法在 VS2012 中将服务引用(WCF 库)添加到 MVC4

react学习与简介

规范化创建一个vs2017 Mvc框架项目

Unity & MVC:如何提升游戏开发质量

ASP.NET MVC、Telerik Kendo、jQuery 验证中的非标准日期格式

改一下OI代码风格