是否可以在Vue.js中有条件地导入CSS文件?

山姆·史蒂文森

我将我的管理面板和客户页面合而为一Vue.js projectcss-files仅当当前路由具有"forAdmin"meta时才可以使用确定性吗?

十年月亮

通过style-loader可用的API结合使用,您可以在代码中动态应用和删除样式表。

首先,您需要更新您的webpack配置规则,以便具有.useable.css扩展名的样式表使用可用的API加载

{
  test: /\.css$/,
  exclude: /\.useable.css$/,
  use: [
    'style-loader',
    'css-loader'
  ]
},
{
  test: /\.useable\.css$/,
  use: [
    'style-loader/useable',
    'css-loader'
  ]
}

现在,在路由器代码文件中,您可以导入样式表,.use()然后.unuse()根据您的条件进行导入

import style from './admin.useable.css'

const router = new VueRouter(...)

router.afterEach((to, from) => {
  for (const route of to.matched) {
    if (route.meta.forAdmin) {
      style.use()
    }
  }

  for (const route of from.matched) {
    if (route.meta.forAdmin) {
      style.unuse()
    }
  }
})

确保在总数.use().unuse()调用之间保持平衡,因为在后台会保留一个引用计数,以便确定何时应应用样式表。

我不确定您的设置是什么,因此可能会有更好的方法来执行您想要的操作。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在Vue中有条件地添加CSS类

在 Vue JS 中有条件地禁用数量

R Description文件:是否可以“有条件地”导入软件包?

在 Vue 中有条件地设置主色

如何在 Vue.js 中有条件地渲染元素?

如何在vue js中有条件地启用按钮

阻止用户在Vue Js中有条件地更改复选框值?

有条件地将组件导入Vue Router

是否可以在AngularJS中有条件地打开和关闭过滤器?

是否可以在 System Verilog 中有条件地生成 for 循环?

是否可以在Modelica中有条件地设置方程式属性?

是否可以使单个参数在步进函数中有条件地接收其值?

我可以在应用程序的make文件中有条件地构建PC文件(Oracle Pro * c)吗?

Vue.js - 有条件地分配一个 CSS 类

如何检查id是否等于用户的id并在react js中有条件地显示按钮?

Swift:是否可以有条件地声明变量?

7z:是否可以有条件地排除文件?

是否可以在我的Azure DevOps构建管道“发布工件”任务中有条件地设置工件名称?

我可以在ARM模板中有条件地使用复制功能吗?

可以在useEffect中有条件地进行不同的清理吗?

如何在Vue中有条件地设置所选选项

您如何在Vue中有条件地绑定v模型?

Vue:如何在tbody中有条件地渲染tr

如何在Vue应用程序的头中有条件地添加代码

如何在Vue中有条件地添加类?

Sapper / Svelte可以有条件地导入组件吗?

我可以在AWS Appsync解析器中有条件地调用lambda函数吗?

是否可以在__init__函数中有条件地从一组固定的父类集中选择一个类的父类?

有条件地将道具发送给子元素Vue js