でコンパイルするとき、私はnodejs /特急プロジェクトのコンテキストで1.8.10 TSコンパイラからこのエラーを取得する:エラー:TS2345:typescriptです
Import * as express from "express"
import * as directory_models from "./directory_models"
import * as forms from "formidable"
let directory_router = express.Router() // HERE /////////
// GET
directory_router.get("/list", function (req, res) {
function callback (err, data) { // function definition
res.render("directory_views.ejs", {datatest: data})
}
directory_models.read(
`SELECT link_title
FROM
links`,
callback)
})
// POST
directory_router.route("/create")
// Display form page
.get(function (req, res) {
res.render("directory_post.ejs")
})
// Process form
.post(function (req, res) {
let form = new forms.IncomingForm()
form.parse(req, function (err, fields, files) {
directory_models.create(fields)
})
res.render("directory_post.ejs")
})
module.exports = directory_router
:ここ
Error:(17, 23) TS2345: Argument of type 'typeof "/Users/ME/Documents/Apps_And_Sites/Js_Apps/site/apps/directory/directory_contr...' is not assignable to parameter of type 'Router'. Property 'param' is missing in type 'typeof "/Users/ME/Documents/Apps_And_Sites/Js_Apps/site/apps/directory/directory_contr...'.
は、コントローラファイルであります
そしてここでは、Webアプリケーションのエントリファイルです:それは、プロジェクトが正常に動作しなくなることはありません
import * as express from "express"
import * as lodash from "lodash"
import * as directory from "./apps/directory/directory_controller"
// Non require variables
let app = express()
let port = process.env.PORT || 3002
import * as forms from "formidable"
app.use("/directory", directory) // ERROR HERE ////////
app.set("views", [__dirname + "/apps/directory/views/", "views"])
app.set("view engine", "ejs")
app.listen(port, function() {
console.log("Server is listening on port:" + port)
})
、それでもこのエラーを理解して取り除きたいと思います。どのようにするか知っていますか ?
それは本当に、ありがとうございました問題を修正しません。本当にすべての輸出入に迷っています。蒸散されたコードは同じなので、私はそれがtypescript環境の正しい構文ではなかったと思います。 –