更新:在另一台计算机开始出现问题并进行编译后,我认为它可能与tscommandxxxxxx.tmp.txt文件有关,这些文件在编译时生成...有时它们不会被删除它完成了,有时它们永远不会出现
更新2 :我认为这种偶然的错误可能会起作用:
Error happened in chokidar: { [ Error: EONOENT, stat 'C:\Users\me\dropbox\xxx\xxx\myApp\src\.subl3cb.tmp'] errno: 34, code: 'ENOENT', path: 'C:\\Users\\me\\dropbox\\xxx\\xxx\\myApp\\src\\.subl3cb.tmp' }
当我去寻找那个临时文件时,它不在那里,所以我不能尝试阅读它。除了grunt-ts
我一直在使用带有节点/ npm,grunt
和grunt-ts
的Sublime(不是VS)的Typescript(0.9.5)。 Grunt / Grunt-ts设置为查看目录以更改.ts
文件,然后将其编译为.js
。包括本地npm模块在内的所有项目文件都存储在Dropbox中,我开发的每台计算机也都安装了全局grunt-cli
。一切都工作了几个星期,然后上周我看到Typescript 1.0RC可用,所以我试图将grunt-ts
依赖从0.9.5更改为1.0,看看它是否可行。好吧,它没有,所以我卸载grunt-ts
并重新安装它。它在我的3台PC中的2台仍能正常工作,但由于某种原因,我的主机(我发起更改的那台)将无法成功观看目录并重新编译。我已经卸载了节点,删除了我可以找到的npm模块目录(安装了节点的一个,然后是appdata / roaming下的2个 - 其中一个是缓存文件夹),然后只重新安装了我在其他PC上的东西,但它并没有带来什么不同。最烦人的部分是没有错误它只是在我从项目文件夹运行grunt
时发生的初始编译后只是坐在那里...从不更新文件更改...如果我运行{{1在另一台PC上进行文件更改,一旦dropbox同步,PC就会监视并编译好。
除了试图找到某个旧的npm /节点信息被缓存的地方之外,我对想要尝试的内容一无所知......
即使它通过dropbox在其他PC上运行也没关系,这里是gruntfile:
grunt
的package.json:
module.exports = function (grunt) {
"use strict";
grunt.initConfig({
ts: {
options: {
target: 'es5',
module: 'amd',
sourcemap: true,
declaration: false,
nolib: false,
comments: false
},
dev: {
src: ["src/**/*.ts"],
watch: 'src',
outDir: 'src'
}
},
});
//load the task
grunt.loadNpmTasks("grunt-ts");
grunt.registerTask("default", ["ts:dev"]);
};
答案 0 :(得分:0)
Typescript 1.0RC可用,所以我试图将grunt-ts依赖从0.9.5更改为1.0以查看它是否可行
您无需修改grunt-ts
的内部package.json
。您可以通过package.json
执行此操作:
https://github.com/grunt-ts/grunt-ts#alternate-compiler-version
例如:
{
"devDependencies": {
"grunt" : "~0.4.1",
"grunt-ts" : "~1.7.2",
"typescript" : "0.9.7",
}
}
关于:
旧的npm /节点信息被缓存
grunt-ts没有。
你能分享你的package.json吗?如果可以,请尝试使用最新版本的grunt-ts(1.7.2-2
)。
{
"devDependencies": {
"grunt" : "~0.4.1",
"grunt-ts" : "~1.7.2-2",
"typescript" : "0.9.7",
}
}
答案 1 :(得分:0)
卸载并重新安装在全局级别相关的所有节点后,我决定在项目中做同样的事情......我做了很多不同的方式,但总是得到相同的结果。
所以我意识到我在dropbox的其他地方有一个小小的教程项目并为该项目运行grunt
并且观看/编译工作了!我记得我在开始时直接从该项目中复制了gruntfile
和package.json
,因此它们与npm
包和目录结构完全相同。
最后,我删除了我的较大应用程序的node_modules
文件夹,并将node_modules
文件夹从工作教程中复制到了...而且它神奇地起作用......奇怪的是,事实证明旧项目正在使用grunt-ts 1.6.4
,并且在我试图升级TS版本的某个时刻,我更新了grunt-ts,无论出于何种原因,这对我来说都不适用于1.7.2-2。 / p>