使用TypeScript + Webpack + Less实现贪吃蛇的例子
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
fantasticbin 7ff8021d5f 修复开始时立即结束的bug 2 years ago
config 更改测试及生产配置,以适配多入口文件命名,及依赖单独记录 2 years ago
public 项目文件及配置优化,并增加EsLint代码检查 2 years ago
src 修复开始时立即结束的bug 2 years ago
.eslintignore 项目文件及配置优化,并增加EsLint代码检查 2 years ago
.eslintrc.js 项目文件及配置优化,并增加EsLint代码检查 2 years ago
.gitignore 项目文件及配置优化,并增加EsLint代码检查 2 years ago
README.md 增加配置文件oneOf优化,和babel及EsLint缓存优化 2 years ago
babel.config.js babel配置格式调整 2 years ago
package.json 增加配置文件oneOf优化,和babel及EsLint缓存优化 2 years ago
tsconfig.json 增加移动端滑动手势事件适配 2 years ago

README.md

贪吃蛇练习

使用TypeScript + Webpack + Less实现贪吃蛇的例子

项目依赖

TypeScript

  • typescript
  • ts-loader
  • any-touch

Webpack

  • webpack
  • webpack-cli
  • webpack-dev-server
  • html-webpack-plugin
  • eslint-webpack-plugin

Babel

  • core-js
  • babel-loader
  • @babel/core
  • @babel/preset-env
  • @babel/plugin-transform-runtime

Less & CSS资源

  • style-loader
  • css-loader
  • less
  • less-loader
  • postcss
  • postcss-loader
  • postcss-preset-env
  • mini-css-extract-plugin
  • css-minimizer-webpack-plugin

项目使用

编译运行

在确保已经正确安装node和npm的前提下

分别执行下面的命令安装依赖并编译项目:

# 安装依赖
npm i
# 编译打包
npm run build

编译完成后使用浏览器打开dist目录下的index.html即可游玩;

根据老师的例子优化部分逻辑及增加食物刷新时与蛇身重叠规避的逻辑同时使用any-touch兼容移动端滑动手势事件欢迎提出意见或建议

继续开发

使用npm run start进入开发模式;

默认使用Chrome浏览器打开可以修改package.json中的值:

{
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "build": "webpack",
    "start": "webpack serve --open chrome.exe"
  }
}

其他

视频讲解:

老师源码: