关于前端:前端脚手架工具使用-Plop-快速构建项目文件

6次阅读

共计 1871 个字符,预计需要花费 5 分钟才能阅读完成。

概念

前端脚手架工具用于疾速创立我的项目的根底构造,提供了我的项目标准与约定。

典型的前端脚手架工具蕴含 Yeoman、Plop 等。Vue Cli 与 Create React App 亦蕴含了脚手架性能。
Yeoman 是一个通用型的脚手架工具,个别用于一次创立整个我的项目。

Plop 是一个小型脚手架工具,用于疾速创立我的项目中的特定文件。

每次有新需要,须要增加新的一套页面时,都须要做一些反复的、繁琐的复制、粘贴及批改等工作。而通过 Plop 疾速创立特定模板文件能够很好的解决以上问题,为开发提效。

Plop 应用案例

装置 Plop

npm i -D plop

创立并编写模板文件

在我的项目根目录创立 plop-templates 目录用于保留模板文件。

  • 模板文件的后缀为 .hbs,遵循 Handlerbars 模板引擎语法。

此处以 React 我的项目为例,创立每个页面的组件文件(index)、款式文件(styles)、数据交互与接口文件(reducer、api)

以 index.hbs 文件为例,内容如下:

import React,{useEffect,useReducer} from 'react'
import {} from 'antd';
import reducer from './reducer';
import styles from './index.less'

function {{properCase name}}() {
  const initState={listFilter:{},
    loading:{}}

  const [{},commit]=useReducer(reducer,initState)

  useEffect(()=>{},[])

  return (<div className={styles['{{ name}}']}>
      {{properCase name}}
    </div>
  )
}

export default {{properCase name}}
  • 其中的 properCase 示意将 name 转换为大驼峰(合乎组件名命名标准)。
  • 此处的 name 是后续由 Plop 从用户输出中读取而失去的。

创立并编写 Plop 配置文件

在我的项目根目录创立 Plop 配置文件 —— plopfile.js

编写配置文件

// plop 配置文件必须导出一个函数,这个函数接管一个 plop 对象,这个对象用于创立相干工作。module.exports = plop => {
// 此处的 new 示意工作名称,后续可通过【plop 工作名】来调用相干工作。plop.setGenerator('new', {
    description: 'create a page', // 形容
    // 命令式交互配置
    prompts: [
      {
        type: 'input',
        name: 'name',
        message: 'page name',
        default: 'default-page',
      },
    ],
    // 实现命令行交互后须要执行的一系列动作
    actions: [
      {
        type: 'add', // 示意增加新文件
        path: 'src/pages/{{name}}/index.jsx', // 指定文件的输入门路
        templateFile: './plop-templates/index.hbs', // 指定模板文件
      },
      {
        type: 'add',
        path: 'src/pages/{{name}}/index.less',
        templateFile: './plop-templates/styles.hbs',
      },
      {
        type: 'add',
        path: 'src/pages/{{name}}/api.js',
        templateFile: './plop-templates/api.hbs',
      },
      {
        type: 'add',
        path: 'src/pages/{{name}}/reducer.js',
        templateFile: './plop-templates/reducer.hbs',
      },
    ],
  });
};
  • 以上是依据模板文件创建新文件的用法(最罕用),更多用法请参阅 Plop 官网文档。

在 package.json 的脚本中设置相干创立命令,不便后续调用。

当执行 npm run new 时,通过应用 plop 调用 new 工作。

{
  "scripts": {
      ...
    "new": "plop new",
    ...
  }
}

应用

调用 npm run new 即可运行之前在 plop 配置文件中定义的 new 工作,它会依据用户输出,联合用户定义的模板创立对应的文件。
每当有新需要时,例如目前有一个数据视图治理的新页面需要,只需运行 npm run new 命令即可疾速创立相干根底文件,防止了反复的、低效的复制、粘贴与批改文件工作。

正文完
 0