背景
Screeps 是一个以 Javascript 为主要编程语言的在线多人游戏,玩家可以编写自己的代码并在虚拟世界中与其他玩家竞争。
在编写 Screeps 代码时,我们可以使用 ES6+ 语法和各种便捷工具来提高开发效率。其中 generator 函数是一种特殊的函数,可以让我们编写异步代码看起来像同步代码一样简单。
但是使用 generator 函数也存在一些问题。Screeps 的代码需要在服务器上运行,而服务器可能不支持所有新的 Javascript 语法特性。因此,我们需要对代码进行转换,以确保它可以在服务器上运行。
此时,就需要用到一个 npm 包:screeps-regenerator-transform。
安装与使用
首先,在你的项目中安装 screeps-regenerator-transform。
npm install --save-dev screeps-regenerator-transform
然后,在你的项目根目录下创建一个名为 .babelrc 的文件,并添加以下内容:
-- -------------------- ---- ------- - ---------- ----------- ---------- - ------------------------------- --------------------------------- - ---------- -------------- -- - -
这里的 include 属性配置了要转换的文件路径。上述配置将会转换 ./src 目录下的所有文件。
最后,运行命令 npm run build
即可将代码转换为可以在服务器上运行的 Javascript 代码。你可以将生成的代码上传到 Screeps 服务器上进行测试。
示例代码
以下是一个使用 generator 函数的示例代码:
-- -------------------- ---- ------- --------- ------------------ - ----- -- ----- -- ------ -- - ----- --- - ------------------- ------------------------ -- ------- -- ----- ------ ------------------------ -- ------- -- ----- ------ ------------------------ -- ------- -- ----- -----
转换后的代码:
-- -------------------- ---- ------- --- ------------------ - ------------------------------- -------- --------------------------- - ------ --- -- -------------- - --- - - ---------- --- -- - -------- ------------------------- ------------ - -- ----------- ---------- ------------- - ----- --- ----------------- ---- - ----- -- - ----------- - - -------- ------------------------- ------ - --- ---- - - -- - - ------------- ---- - --- ---------- - --------- --------------------- - --------------------- -- ------ ----------------------- - ----- -- -------- -- ----------- ------------------- - ----- ----------------------------- --------------- ------------ - - -------- ------------------------- ----------- ------------ - -- ------------ ---------------------------------------- ------------ -- ------------- ------------------------------ ------------- ------ ------------ - --- ------- - ------------------------------------------------------- -------- ------------------ - ------ -------------------------------- --------------------------- - ----- --- - ------ -------------- - -------------- - ---- -- ------------- - -- ------ -- ---- -- ------------- - -- ------ -- ---- -- ------ ------------------------- --- ---- -- ---- ------ ------ ---------------- - - -- --------- - --- --- - ------------------- ------------------------ -- ------- -- ----- ------ ------------------------ -- ------- -- ----- ------ ------------------------ -- ------- -- ----- -----
总结
screeps-regenerator-transform 可以帮助我们将使用 generator 函数编写的代码转换为可以在 Screeps 服务器上运行的 Javascript 代码。同时,它也有助于我们更好地理解和掌握 generator 函数的使用。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60055d5781e8991b448db1de