Home > Development Tools > VSCode > Scaffolding also comes in plug-in form! vscode implements scaffolding plug-in

Scaffolding also comes in plug-in form! vscode implements scaffolding plug-in

青灯夜游
Release: 2022-05-06 19:32:45
forward
3915 people have browsed it

Scaffolding also comes in plug-in form! The following article will introduce to you the vscode plug-in visual production and management scaffolding and principle analysis. I hope it will be helpful to everyone!

Scaffolding also comes in plug-in form! vscode implements scaffolding plug-in

When it comes to scaffolding, you may think of various xxx-cli. This article introduces another way: implemented in the form of vscode plug-in to provide web visual operations , as shown below:

Scaffolding also comes in plug-in form! vscode implements scaffolding plug-in

#The following describes how to install and use it, as well as the implementation principle.

Install and use

vscode to install the lowcode plug-in. This plug-in is an efficiency tool. Scaffolding is only one of its functions. You can view more functionsDocumentation, this episode only talks about scaffolding. [Recommended learning: "vscode introductory tutorial"]

After the plug-in is installed, open the scaffolding interface. The steps are as follows:

Scaffolding also comes in plug-in form! vscode implements scaffolding plug-in

##Okay Use the shared scaffolding directly, check the option and create it directly:

Scaffolding also comes in plug-in form! vscode implements scaffolding plug-in

Create the scaffolding

In the root directory of the template project Create the

lowcode.scaffold.config.json file, and add the .ejs suffix to the file that needs to be dynamically replaced.

ejs syntax:

https://ejs.bootcss.com/

Scaffolding also comes in plug-in form! vscode implements scaffolding plug-in

Configuration##A complete

lowcode.scaffold.config.json

Configuration: <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:js;toolbar:false;">{ &quot;formSchema&quot;: { &quot;schema&quot;: { &quot;type&quot;: &quot;object&quot;, &quot;ui:displayType&quot;: &quot;row&quot;, &quot;ui:showDescIcon&quot;: true, &quot;properties&quot;: { &quot;port&quot;: { &quot;title&quot;: &quot;监听端口&quot;, &quot;type&quot;: &quot;string&quot;, &quot;props&quot;: {}, &quot;default&quot;: &quot;3000&quot; }, &quot;https&quot;: { &quot;title&quot;: &quot;https&quot;, &quot;type&quot;: &quot;boolean&quot;, &quot;ui:widget&quot;: &quot;switch&quot; }, &quot;lint&quot;: { &quot;title&quot;: &quot;eslint + prettier&quot;, &quot;type&quot;: &quot;boolean&quot;, &quot;ui:widget&quot;: &quot;switch&quot;, &quot;default&quot;: true }, &quot;noREADME&quot;: { &quot;title&quot;: &quot;移除README文件&quot;, &quot;type&quot;: &quot;boolean&quot;, &quot;ui:widget&quot;: &quot;switch&quot;, &quot;ui:width&quot;: &quot;100%&quot;, &quot;ui:labelWidth&quot;: 0, &quot;ui:hidden&quot;: &quot;{{rootValue.emptyREADME === true}}&quot;, &quot;default&quot;: false }, &quot;emptyREADME&quot;: { &quot;title&quot;: &quot;空README文件&quot;, &quot;type&quot;: &quot;boolean&quot;, &quot;ui:widget&quot;: &quot;switch&quot;, &quot;ui:hidden&quot;: &quot;{{rootValue.noREADME === true}}&quot; } }, &quot;labelWidth&quot;: 120, &quot;displayType&quot;: &quot;row&quot; }, &quot;formData&quot;: { &quot;port&quot;: 3000, &quot;https&quot;: false, &quot;lint&quot;: true, &quot;noREADME&quot;: false, &quot;emptyREADME&quot;: false } }, &quot;excludeCompile&quot;: [&quot;codeTemplate/&quot;, &quot;materials/&quot;], &quot;conditionFiles&quot;: { &quot;noREADME&quot;: { &quot;value&quot;: true, &quot;exclude&quot;: [&quot;README.md.ejs&quot;] }, &quot;lint&quot;: { &quot;value&quot;: false, &quot;exclude&quot;: [&quot;.eslintrc.js&quot;, &quot;.prettierrc.js&quot;] } } }</pre><div class="contentsignin">Copy after login</div></div>

formSchema

:

formSchema.schema

is the schema exported by x-render form designer. The form interface will be built based on the schema. formSchema.formData is the default for the form. Data

Scaffolding also comes in plug-in form! vscode implements scaffolding plug-in#When creating a project, the form data will be passed into the ejs template for compilation.

excludeCompile

: Configure folders or files that do not need to be compiled by ejs.

conditionFiles

: Based on the value of the form item, delete certain folders or files when creating the project, such as: <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:js;toolbar:false;">&quot;conditionFiles&quot;: { &quot;noREADME&quot;: { &quot;value&quot;: true, &quot;exclude&quot;: [&quot;README.md.ejs&quot;] }, &quot;lint&quot;: { &quot;value&quot;: false, &quot;exclude&quot;: [&quot;.eslintrc.js&quot;, &quot;.prettierrc.js&quot;] } }</pre><div class="contentsignin">Copy after login</div></div>when

lint

When the value of this form item is false, the configured folders or files ".eslintrc.js" and ".prettierrc.js" will be excluded from the created project.

Local debugging scaffolding

Scaffolding also comes in plug-in form! vscode implements scaffolding plug-in

##Reference project

https://github.com/lowcode-scaffold/lowcode-mock

Publish the scaffolding

Submit the scaffolding to the git repository, please note that it is open Public access to the project.

Use scaffolding

Use the git warehouse address directly

##Note Use clone address to support specified branches, such as Scaffolding also comes in plug-in form! vscode implements scaffolding plug-in-b master https://github.com/lowcode-scaffold/lowcode-mock.git

, internal private warehouses can also use

Scaffolding also comes in plug-in form! vscode implements scaffolding plug-inShare to template list to quickly create

Modify

warehouseScaffolding also comes in plug-in form! vscode implements scaffolding plug-in Contents in

index.json

, submit PR.

实现原理

本地调试时,就是在步骤 2 中将选择的文件夹内容或者当前 vscode 打开的项目内容拷贝到临时工作目录。

Scaffolding also comes in plug-in form! vscode implements scaffolding plug-in

下集再说插件其他功能,插件源码:https://github.com/lowcoding/lowcode-vscode

原文地址:https://juejin.cn/post/7080787567192309797

作者:若邪

更多关于VSCode的相关知识,请访问:vscode教程!!

The above is the detailed content of Scaffolding also comes in plug-in form! vscode implements scaffolding plug-in. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:juejin.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template