试图将用typescript编写的类导入javascript节点,出现错误
我正在创建一个node express应用程序。 对于我的用例,我有一个1.ts文件,其类为:试图将用typescript编写的类导入javascript节点,出现错误,javascript,node.js,typescript,Javascript,Node.js,Typescript,我正在创建一个node express应用程序。 对于我的用例,我有一个1.ts文件,其类为: export class blah { constructor(props) { } tt() { console.log('logging function'); } } 在我的2.js文件中,我作为 const blah = require('./1') var b = new blah.blah() console.log(b.tt()) 但未调
export class blah {
constructor(props) {
}
tt() {
console.log('logging function');
}
}
在我的2.js文件中,我作为
const blah = require('./1')
var b = new blah.blah()
console.log(b.tt())
但未调用console.function中的任何内容
如何解决此问题。
tsconfig.json文件内容
{
"compilerOptions": {
"module": "commonjs",
"target": "es6",
"sourceMap": true,
"experimentalDecorators": true,
"emitDecoratorMetadata": true
},
"exclude": [
"node_modules"
]
}
一定是
const blah=require(“./1”)它必须是
const blah=require(“/1”)我正在发布文件内容的答案。这个代码对我有用。我只是在包含文件的目录中运行命令
tsc
。输出文件是1.js
和1.js.map
。然后我运行节点2
。输出是
logging function
undefined
(旁注:它打印未定义的
,因为调用console.log(b.tt())
试图打印b.tt()
的返回值,但它不返回任何内容)
const blah=[…]
给出了与您相同的错误
目录结构(同一级别上的所有内容):
- 1.ts
- 2.js
- tsconfig.json
{
"compilerOptions": {
"module": "commonjs",
"target": "es6",
"sourceMap": true,
"experimentalDecorators": true,
"emitDecoratorMetadata": true
},
"exclude": [
"node_modules"
]
}
我张贴作为一个回答张贴的文件内容。这个代码对我有用。我只是在包含文件的目录中运行命令
tsc
。输出文件是1.js
和1.js.map
。然后我运行节点2
。输出是
logging function
undefined
(旁注:它打印未定义的
,因为调用console.log(b.tt())
试图打印b.tt()
的返回值,但它不返回任何内容)
const blah=[…]
给出了与您相同的错误
目录结构(同一级别上的所有内容):
- 1.ts
- 2.js
- tsconfig.json
{
"compilerOptions": {
"module": "commonjs",
"target": "es6",
"sourceMap": true,
"experimentalDecorators": true,
"emitDecoratorMetadata": true
},
"exclude": [
"node_modules"
]
}
您正在使用{}它用于销毁对象..意味着当您的库导出多个内容并希望访问其中的一部分时,您可以使用销毁语法..不,它不适用于您的解决方案,它会给出相同的结果。更新了问题,它可以识别类,但无法调用函数。请在回答中添加一个解释,说明为什么您认为它应该是这样的,以及为什么OP的代码不起作用。您正在使用{}它用于销毁对象..意味着当您的库导出多个内容并希望访问其中的一部分时,您可以使用销毁语法..不,它不适用于您的解决方案,它会给出相同的结果。更新了问题,它可以识别类,但无法调用函数。请在回答中添加一个解释,说明为什么您认为应该是这样,以及为什么OP的代码不起作用。您的代码在我的机器上起作用。您是否重新编译了
tsc 1.ts
?是的,这是我的package.json脚本“build ts”:“tsc&&nodemon./src/index.js”,“dev”:“nodemon-e ts--exec \“warn build ts\”,我由warn devDo运行您有tsconfig.json
文件吗?这是。。更新了问题。你的代码在我的机器上运行。您是否重新编译了tsc 1.ts
?是的,这是我的package.json脚本“build ts”:“tsc&&nodemon./src/index.js”,“dev”:“nodemon-e ts--exec \“warn build ts\”,我由warn devDo运行您有tsconfig.json
文件吗?这是。。更新了问题。即使我在函数中添加了return语句,它也不会在控制台中打印任何内容。您是否尝试复制我发布的文件的内容,并按照步骤排除typescript编译的问题?根据它是否工作,你可以排除一些可能的错误。“nodemon-ets--exec”可能有问题\“Thread build ts`即使我在函数中添加了return语句,它也不会在控制台中打印任何内容。您是否尝试复制我发布的文件的内容,并按照步骤排除typescript编译的问题?根据它是否工作,你可以排除一些可能的错误。“nodemon-ets--exec\”纱线构建ts可能有问题`