为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