91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Vuepress怎么使用vue組件實現頁面改造

發布時間:2022-07-05 13:43:00 來源:億速云 閱讀:976 作者:iii 欄目:開發技術

本文小編為大家詳細介紹“Vuepress怎么使用vue組件實現頁面改造”,內容詳細,步驟清晰,細節處理妥當,希望這篇“Vuepress怎么使用vue組件實現頁面改造”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。

前置環境

  • node 環境 node v16.13.0

  • VuePress 版本 VuePress v2.0.0-beta.48

每個版本的使用方式還是有些差異的,尤其是 1.x2.x,所以在閱讀的時候盡量與自己所用的版本對比下,避免不必要的試錯。

使用 vue 組件

安裝插件

Vuepress2.x 中需要安裝 @vuepress/plugin-register-components 插件并做好配置,而在Vuepress1.0中,md 文件能自動識別導出的.vue文件。

yarn add @vuepress/plugin-register-components@next
// 或者
npm i -D @vuepress/plugin-register-components@next

配置插件

config.js中配置修改如下:

? 官方配置項文檔

const { registerComponentsPlugin } = require('@vuepress/plugin-register-components')
module.exports = {
  plugins: [
    registerComponentsPlugin({
      // 配置項
    }),
  ],
}

我本地的配置文件的部分內容:

const path = require("path");
const { defaultTheme } = require('vuepress');
const { docsearchPlugin } = require('@vuepress/plugin-docsearch')
// ======================引入插件====================================
const { registerComponentsPlugin } = require('@vuepress/plugin-register-components')
// ======================引入插件 End================================
const navbar = require('./navbar');
const sidebar = require('./sidebar');
module.exports = {
  base: '/',
  lang: 'zh-CN',
  title: '前端技術棧',
  description: '前端白皮書',
  head: [
    ['link', { rel: 'manifest', href: '/manifest.webmanifest' }],
    ['meta', { name: 'theme-color', content: '#3eaf7c' }]
  ],
  alias: {
    '@pub': path.resolve(__dirname, './public'),
  },
  markdown: {
    importCode: {
      handleImportPath: (str) =>
          str.replace(/^@src/, path.resolve(__dirname, 'src')),
    },
    extractTitle: true
  },
  // ======================配置插件====================================
  plugins: [
    registerComponentsPlugin({
      // 配置項
      componentsDir: path.resolve(__dirname, './components')
    })
  ],
  // ======================配置插件 End=================================
  theme: defaultTheme({
    // URL
    logo: 'https://vuejs.org/images/logo.png',
    // 頂部導航
    navbar: navbar,
    // 側邊欄
    sidebar: sidebar,
    sidebarDepth: 2, // e'b將同時提取markdown中h3 和 h4 標題,顯示在側邊欄上。
    lastUpdated: true // 文檔更新時間:每個文件git最后提交的時間
  })
}

創建 vue 組件

.vuepress文件夾中新建components文件夾,里面存放vue組件,文件結構如下:

├─.vuepress
│  └─ components
│  │  └─ Card.vue
│  └─ config
│  │  └─ navbar.js
│  │  └─ sidebar.js
│  └─ public
│  │  └─ images
│  └─ config.js

至此md文件就能無需引入即可自動識別.vuepress/components/下所有的vue組件了。繼續完成下面的步驟,就可以看到項目中使用的效果。

Card.vue 文件內容如下,這個組件個人可以因需而定,這里只做個參照,和后面的效果對應上。key這里沒有設置業務 ID 暫且使用 k來代替。

<template>
  <div class="g-card-link">
    <div v-for="(item,k) in value" class="g-card-item" :key="k">
      <a :href="item.link" rel="external nofollow"  target="_blank" :title="item.title">{{item.title}}</a>
    </div>
  </div>
</template>
<script setup>
import { ref, defineProps } from 'vue';
const props = defineProps({
  defaultValue:String
})
const value = ref(props.defaultValue);
</script>
<style lang="scss">
button {background-color: #4e6ef2}
.g-card-link {
  display: flex;
  flex-wrap: wrap;
  gap:10px;
  text-align: center;
  line-height: 38px;
  .g-card-item {
    background: blue;
    width: 113px;
    max-width: 138px;
    height: 38px;
    cursor: pointer;
    overflow: hidden;
  }
  .g-card-item:nth-of-type(2n) {
    background: rgba(44,104,255,.1);
  }
  .g-card-item:nth-of-type(2n+1) {
    background: rgba(56, 203, 137, .1);
  }
}
</style>

使用 vue 組件

docs/docs/README.md 文件直接引入Card.vue,當然文檔路徑你可以自由選擇。這里我們給組件傳了數據,如果沒有數據交互會更簡單,直接引用就行了。

---
data: 2022-06-14
lang: zh-CN
title: Docs 常用文檔
description: 收集常用的文檔
---
# Docs
收集精編常用的文檔...
<div v-for="(item,k) in linkList">
    <h4>{{item.title}}</h4>
    <div>
        <card :defaultValue="item.children"/>
    </div>
</div>
<script setup>
import { ref } from 'vue';
const linkList = ref([]);
linkList.value = [
    {
        title: 'React UI 組件庫',
        children: [
            {
                title: 'Ant Design',
                link: 'https://ant.design/docs/react/introduce-cn'
            },{
                title: 'Bootstrap',
                link: 'https://react-bootstrap.github.io/getting-started/introduction'
            },{
                title: 'Material UI',
                link: 'https://mui.com/material-ui/getting-started/overview/'
            }
        ]
    },{
        title: 'Vue UI 組件庫',
        children: [
            {
                title: 'Element',
                link: 'https://element.eleme.io/#/zh-CN/component/installation'
            },{
                title: 'Element Plus',
                link: 'https://element-plus.org/zh-CN/component/button.html'
            },{
                title: 'Vant',
                link: 'https://youzan.github.io/vant/#/zh-CN'
            },{
                title: 'View Design',
                link: 'https://www.iviewui.com/view-ui-plus/guide/introduce'
            }
        ]
    },
    {
        title: '動畫庫',
        children: [
            {
                title: 'Animate.css',
                link: 'https://animate.style/'
            }
        ]
    }
]
</script>

效果:

Vuepress怎么使用vue組件實現頁面改造

讀到這里,這篇“Vuepress怎么使用vue組件實現頁面改造”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

维西| 花垣县| 天峻县| 民权县| 广元市| 昌黎县| 明溪县| 曲沃县| 长沙市| 喀喇| 习水县| 增城市| 遵义市| 仁布县| 阿尔山市| 顺义区| 宜良县| 兴和县| 蒙山县| 呼和浩特市| 大洼县| 从江县| 都安| 溧阳市| 阳山县| 昆明市| 民乐县| 密云县| 博客| 东光县| 朝阳区| 土默特右旗| 永川市| 额济纳旗| 平潭县| 余干县| 木兰县| 兴和县| 壶关县| 普兰县| 启东市|