没有组件的Vue插件中的捆绑样式

时间:2019-06-04 00:02:24

标签: javascript vue.js webpack plugins vuejs2

我的问题

在进一步阅读之前,“没有组件”是指我的插件不需要组件,因为没有模板,它只是一个自定义Vue指令,可充当IEnumerable<BasePersonViewModel> viewModel = personnel.AsEnumerable<BasePerson>() .Concat(nonPersonnel) .OrderByDescending(p => p.LastUpdatedDate); return View(viewModel); 的包装。但是,这并不意味着如果无法避免,我不愿意使用组件来包含必要的样式...

请考虑以下插件(建议的文件结构):

@* Assuming Model is List<BasePersonViewModel> *@
@foreach (BasePersonViewModel item in Model)
{
    @* display common data such as item.ID *@

    @if (item is PersonnelViewModel personnel)
    {
        @* Display 'personnel' data *@
    }
    else if (item is NonPersonnelViewModel nonPersonnel)
    {
        @* Display 'nonPersonnel' data *@
    }
}
  • class安装Vue插件并定义一个自定义指令,该指令调用src │ index.js │ SomeClass.js │ └───sass // (not sure about this) │ core.scss 类上的某些方法
  • index.js提供所有必需的功能
  • SomeClass提供了插件所需的所有必要样式

我的问题很简单,就是在安装Vue插件后如何包括SomeClass.js文件?或者,哪种文件结构更好,从而包含插件所需的样式呢?

理想情况下,我想避免使用模板,因为没有插入HTML,我的插件只是向DOM中已定义的元素添加样式。

1 个答案:

答案 0 :(得分:0)

对于任何对此绊脚石的人,解决方案都非常简单...我只是将以下内容放在index.js的顶部:

import './sass/_core.scss';

我不知道您可以将CSS / SASS文件直接导入Javascript文件...