Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/41.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 什么';这是咖啡脚本的最佳实践;npm?_Node.js_Npm_Coffeescript - Fatal编程技术网

Node.js 什么';这是咖啡脚本的最佳实践;npm?

Node.js 什么';这是咖啡脚本的最佳实践;npm?,node.js,npm,coffeescript,Node.js,Npm,Coffeescript,我已经开发了一段时间的节点应用程序和软件包,并且一直使用CoffeeScript编写 要使用npm,我通常在本地安装coffee script,然后在package.json中设置一个脚本来运行应用程序,如下所示: “开始”:“coffee app.coffee” 这是最好的做法吗?我知道有一种替代方法,可以提供coffeescript作为开发依赖项,然后使用预发布脚本来编译coffeejs。我的方法是将coffeescript放在src/目录中,并将其编译到lib/目录中 My.gitigno

我已经开发了一段时间的节点应用程序和软件包,并且一直使用CoffeeScript编写

要使用npm,我通常在本地安装
coffee script
,然后在
package.json
中设置一个脚本来运行应用程序,如下所示:

“开始”:“coffee app.coffee”


这是最好的做法吗?我知道有一种替代方法,可以提供
coffeescript
作为开发依赖项,然后使用预发布脚本来编译coffeejs。

我的方法是将coffeescript放在
src/
目录中,并将其编译到
lib/
目录中

My
.gitignore
包含一行
lib/
,My
.npmignore
文件包含一行
src/
。因此,源代码不会发布到npm,javascript也不会发布到Github

我的
package.json
文件包含以下内容:

  "main": "lib/main.js",
  "scripts": {
    "watch": "coffee -c -w -o lib src &",
    "compile": "coffee -c -o lib src",
    "prepublishOnly": "npm run-script compile"
  },
  "devDependencies": {
    "coffeescript": "^2.3.2"
  }

因此,当我工作时,我运行
npm-watch
,以使javascript文件保持最新。但是在发布之前,它会确保javascript文件是最新的。

你是说发布到NPM?你应该发送JS,而不是CS(或TS或其他任何东西);代码应该始终以JS的形式发布。所以,不是在出版方面,而是在开发过程中。我想知道是否最好有一个“开始”和“预发布”脚本。使用start,coffee可以直接运行.coffee文件,而prepublish将预处理coffee->JS,然后让节点像往常一样使用JS文件运行。