我正在尝试使用主题继承来修改 VuePress 默认主题导航栏。阅读 1.x 文档后,我相信我正在应用推荐的内容,但网站无法正确构建。
我已添加extend = '@vuepress/theme-default'到我的config.toml文件中,并创建了一个名为的目录.vuepress/theme/components/,我已将文件Navbar.vue.
生成站点时,我的终端给了我以下警告:
warning [vuepress] Cannot resolve Layout.vue file in undefined, fallback to default layout: ...
Run Code Online (Sandbox Code Playgroud)
该网站确实有效,但未使用默认主题,并且页面全部关闭。
我正在学习 Kotlin 中的子类型和超类型,最初假设这些术语意味着继承和父类。但是在阅读了 JetBrains 的这篇文章后,我不确定我是否完全理解子类型的含义。
该帖子解释说,它Any是Any?(有道理的)Number的子类型,是 的子类型Any,并且Int是 的子类型Number。到目前为止一切顺利(Any?-> Any-> Number-> Int)和(Any?-> Number?-> Int?)。
但请注意图#5:
此图(以及随附的文本)暗示并解释了Number是其可为空对应物 的子类型Number?,并且它Int也是其可为空对应物 的子类型Int?。这听起来很直观的,直到你记住,Int也是一个亚型Number,和Number子类型Any!这与 Kotlin 文档直接矛盾,后者指定
Kotlin 支持单父类继承——所以每个类(除了根类 Any)都有一个父类,称为超类。
我假设子类型本身不是子类(一个类可以同时是多个父类的子类型?)。如果是这样,有人可以为我澄清 Kotlin 中“子类型”和“超类型”的确切含义吗?