【问题标题】:Import / export Nuxt layouts导入/导出 Nuxt 布局
【发布时间】:2021-06-05 16:34:47
【问题描述】:

我在 Nuxtjs 2.15.4 上,我想从不同的目录导入我的布局。 例如

import cms from '~~/mylayout/cms.vue' 
export default{
  layout: cms
}

我怎样才能做到这一点?重要的是我的布局可以通过import函数导入。

我正在为动态主题执行此操作,以便我可以从不同目录读取布局。

还有,如何更改默认布局名称?由于我想实现动态布局,我可能也需要导入默认布局。那么我在哪里可以告诉 Nuxt,例如 ~~/mylayout/d.vue 是我的默认布局?

【问题讨论】:

  • 不回答自己,但是 cmets 绝对不会回答这个问题! :)

标签: vue.js nuxt.js


【解决方案1】:

您不需要导入布局,它已为您完成。只需将其放在layouts 目录中即可。

【讨论】:

  • 我知道。如果没有最低限度的知识,我怎么能在 Nuxt 上工作! :D。正如我所说,我正在为我的应用程序设置主题。所以我需要告诉 nuxt 从另一个文件夹而不是布局读取。如果您阅读以下内容,您将获得我将要实现的目标:adrianjost.medium.com/nuxt-js-theming-1-18e9caa1dfd9
  • 您可以使用dir 属性实现它:nuxtjs.org/docs/2.x/directory-structure/nuxt-config/#dir 给它,layouts: my_cool_layouts
  • 其实也知道这一点:)。这对我没有帮助。让我解释一下。该选项完全改变了我的目录,是的,但我也希望它是这样的:从我的主题目录中读取;如果不存在,则从核心目录读取。我可以通过更改别名来做到这一点,但我需要import leyout from '~mydir/layout' 表达式来做到这一点。顺便说一句,您知道如何更改默认布局吗?
  • 你不能有动态布局,它也不应该是 IMO。如果你有动态的东西,创建一个组件并使用<component :is="myFancyComponent>your wrapped content</component>动态组件:vuejs.org/v2/guide/… 最终结果是一样的,你只需要将你的模板包装在里面。如果只是改变颜色,你甚至不需要布局和组件,在 CSS 中改变颜色就足够了。
  • 应该不错。表演是一个广泛的主题。使用组件会比布局更糟糕吗?不,你的整个事情都会表现出色吗?没办法说。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2022-01-08
  • 2023-02-09
  • 2022-01-27
  • 2021-07-30
  • 2019-12-03
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多