【问题标题】:Laravel Mix add Specific File for authorized userLaravel Mix 为授权用户添加特定文件
【发布时间】:2018-08-31 09:55:15
【问题描述】:

刚开始使用 Laravel Mix。现在我已经将所有需要的主要 css 捆绑到一个名为 test.css 的文件中,并且可以正常加载。

现在,还有两个样式表,即 a.css 和 b.css。我想要做的是将其合并到由 mix 生成的 test.css 中,前提是用户已通过身份验证。

现在,在简单的刀片中,我们将添加

@auth // Load css here @endauth

但是,如何使用 mix 来做到这一点,在任何地方都没有找到相同的信息。

谢谢

【问题讨论】:

  • CSS 不是编程语言。您只能为经过身份验证的用户创建一个新的 CSS 文件,或者只是将其合并到test.css。但是 CSS 永远不会知道用户是否经过身份验证
  • 有什么方法可以通过 Laravel Mix 处理,因为如果我最初加载这些文件,那么在其他用户登录之前,这两个文件将被不必要地使用?

标签: css laravel laravel-mix


【解决方案1】:

CSS 不是一种编程语言,因此您不能使用 if 语句来了解用户是否在 CSS 中进行了身份验证。

在来自 laravel mix 的文档中。我不知道你是否使用任何 CSS 预处理器,但我想这应该只适用于 CSS 文件:

mix.styles([
    '/resources/assets/css/partial1.css',
    '/resources/assets/css/partial2.css',
    '/resources/assets/css/main.css',
], 'public/css/test.css');

mix.styles([
    '/resources/assets/css/a.css',
    '/resources/assets/css/b.css',
], 'public/css/admin.css');

然后在用户登录时加载admin.css

【讨论】:

  • 我也想过,不过,假设我只需要一个特定的css文件,是否值得缩小或直接使用?
  • 这取决于文件大小。但是每个加载文件的请求都需要时间。因此,最终将所有内容合并到一个文件中可能会更快。始终建议缩小。
  • 同意这一点。谢谢!
猜你喜欢
  • 2015-11-17
  • 1970-01-01
  • 2017-09-14
  • 2017-06-27
  • 1970-01-01
  • 2020-01-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多