透過 100 多個技巧學習 Nuxt!

inkline
@inkline/plugin

Inkline 的 Nuxt 模組,Inkline 是為 Vue.js 3 設計系統而生的直觀 UI UX DX 元件庫。

Inkline

@inkline/plugin

使用您最愛的開發環境來使用 Inkline 的最簡單快速方法。我們正式支援與 Nuxt.jsVite.jsWebpack.js 的整合。


首頁 · 文件 · Storybook · 問題追蹤器


npm version Downloads Discord



目錄

安裝

npm i -S @inkline/plugin @inkline/inkline@next

設定

建立一個 inkline.config.ts 檔案,並根據需要覆寫設定

import { defineConfig } from '@inkline/config';

export default defineConfig({
    theme: {
        default: {
            color: {
                primary: '#178ab0'
            }
        }
    }
});

請造訪 設定參考 以取得詳細資訊。

整合

Vite.js

@inkline/plugin/vite 新增至您的 vite.config.ts 檔案的 plugins

import { defineConfig } from 'vite';
import { inkline } from '@inkline/plugin/vite';

export default defineConfig({
    plugins: [
        inkline()
    ]
});

(可選)使用您偏好的選項設定整合

import { defineConfig } from 'vite';
import { inkline } from '@inkline/plugin/vite';

export default defineConfig({
    plugins: [
        inkline({
            configFile: resolve(process.cwd(), 'inkline.config.ts'),
            outputDir: resolve(__dirname, 'src/css/variables'),
            extName: '.scss'
        })
    ]
});

Webpack.js

@inkline/plugin/vite 新增至您的 webpack.config.js 檔案的 plugins

const inkline = require('@inkline/plugin/webpack');

module.exports = {
    plugins: [
        inkline()
    ]
};

(可選)使用您偏好的選項設定整合

const { resolve } = require('path');
const inkline = require('@inkline/plugin/webpack');

module.exports = {
    plugins: [
        inkline({
            configFile: resolve(process.cwd(), 'inkline.config.ts'),
            outputDir: resolve(__dirname, 'src/css/variables'),
            extName: '.scss'
        })
    ]
};

Nuxt.js

@inkline/plugin/nuxt 新增至您的 nuxt.config.ts 檔案的 modules

export default defineNuxtConfig({
    modules: ['@inkline/plugin/nuxt']
});

(可選)使用您偏好的選項設定整合

import { resolve } from 'path';

export default defineNuxtConfig({
    modules: ['@inkline/plugin/nuxt'],
    inkline: {
        /**
         * @inkline/plugin 
         * @description provides import specific options
         */
         
        import: {
            mode: 'global', // Import mode: 'global' | 'auto'
            styles: true,   // Import styles using the module
            scripts: true,  // Import scripts using the module
            utilities: true // Import utility classes using the module
        },
        
        /**
         * @inkline/config
         * @description provides configuration file specific options
         */
         
        configFile: resolve(process.cwd(), 'inkline.config.ts'),
        outputDir: resolve(__dirname, 'src/css/variables'),
        extName: '.scss',
        
        /**
         * @inkline/inkline
         * @description provides configuration file specific options
         */
         
        globals: {
            color: '',                         // Default color variant
            colorMode: 'system',               // Default color mode: 'system' | 'light' | 'dark' | string
            colorModeStrategy: 'localStorage', // Default color mode startegy: 'localStorage' | string
            componentOptions: {},              // Component specific global overrides
            locale: 'en',                      // Default translation
            size: '',                          // Default size variant
            validateOn: ['input', 'blur']     // Default validation events
        } 
    }
});

錯誤與功能請求

遇到錯誤或有功能請求?請先搜尋現有和已關閉的問題。如果您的問題或想法尚未被解決,請開啟一個新的問題

社群

取得關於 Inkline 開發的最新資訊,並與專案維護者和社群成員聊天。

  • 在 Twitter 上追蹤 @inkline
  • 加入 Discord 上的 Inkline
  • 當開發人員透過 npm 或類似的發佈機制發佈修改或新增 Inkline 功能的套件時,應使用關鍵字 inkline,以達到最大的可發現性。

發佈

先前的版本及其文件也提供下載。

版本控制

為了提高透明度和向後相容性,Inkline 遵循 語義化版本控制指南進行維護。

建立者

Alex Grozav

如果您在日常工作中使用 Inkline 並覺得它讓您的生活更輕鬆,請考慮在 Github Sponsors 上贊助我。💖

貢獻

請閱讀我們的貢獻指南。您可以在其中找到有關開啟問題、功能請求、編碼標準以及如何設定本機開發環境的說明。

程式碼版權為 2022 年至今的 Inkline Plugin 作者所有。程式碼依據 ISC 許可證發佈。