react-sketchapp 项目教程
1. 项目的目录结构及介绍
react-sketchapp 项目的目录结构如下:
react-sketchapp/
├── examples/
│ ├── basic/
│ ├── design-system/
│ ├── images/
│ ├── lazy-images/
│ ├── shapes/
│ ├── svg/
│ └── text/
├── lib/
│ ├── components/
│ ├── index.js
│ └── utils/
├── src/
│ ├── components/
│ ├── index.js
│ └── utils/
├── .babelrc
├── .gitignore
├── .npmignore
├── .prettierrc
├── LICENSE
├── README.md
├── package.json
└── yarn.lock
目录结构介绍
examples/
: 包含多个示例项目,每个示例展示了不同的功能和用法。lib/
: 编译后的代码,用于发布到 npm。src/
: 源代码目录,包含组件和工具函数。.babelrc
: Babel 配置文件。.gitignore
: Git 忽略文件配置。.npmignore
: npm 忽略文件配置。.prettierrc
: Prettier 代码格式化配置。LICENSE
: 项目许可证。README.md
: 项目说明文档。package.json
: 项目依赖和脚本配置。yarn.lock
: Yarn 依赖锁定文件。
2. 项目的启动文件介绍
项目的启动文件位于 examples/
目录下的各个示例项目中。以 basic
示例为例,启动文件为 examples/basic/index.js
。
启动文件示例
import React from 'react';
import { render, Text } from 'react-sketchapp';
const App = () => (
<Text>Hello World!</Text>
);
export default (context) => {
render(<App />, context.document.currentPage());
};
启动文件介绍
import React from 'react';
: 引入 React 库。import { render, Text } from 'react-sketchapp';
: 引入 react-sketchapp 的渲染函数和文本组件。const App = () => ( <Text>Hello World!</Text> );
: 定义一个简单的 React 组件。export default (context) => { render(<App />, context.document.currentPage()); };
: 导出一个函数,该函数在 Sketch 中渲染App
组件。
3. 项目的配置文件介绍
package.json
package.json
文件包含了项目的依赖、脚本和其他元数据。
{
"name": "react-sketchapp",
"version": "4.0.0",
"description": "Render React components to Sketch",
"main": "lib/index.js",
"scripts": {
"build": "babel src -d lib",
"prepublish": "npm run build"
},
"keywords": [
"react",
"sketch",
"react-sketchapp"
],
"author": "Airbnb",
"license": "MIT",
"dependencies": {
"prop-types": "^15.6.2",
"react": "^16.8.6",
"react-dom": "^16.8.6",
"sketch-module-web-view": "^3.0.0"
},
"devDependencies": {
"babel-cli": "^6.26.0",
"babel-preset-env": "^1.7.0",
"babel-preset-react": "^6.24.1"
}
}
配置文件介绍
name
: 项目名称。version
: 项目版本。description
: 项目描述。main
: 项目入口文件。scripts
: 包含可执行的脚本命令,如build
和prepublish
。keywords
: 项目关键词。author
: 项目作者。license
: 项目许可证。dependencies
: 项目运行时依赖。devDependencies
: 项目开发时依赖。
以上是