スタック・オーバーフロー Asked by hogemaru on December 28, 2021
Node.js で textlint を使用していますが、messages が空になってしまい原因がよく分かりません。
何が原因か分かる方が入ればご回答をお願いいたします。
あまり関係ないかと思っての補足ですが、Nuxt.js の middleware から上記を動かしています。
実行環境
Node.js: 12.8.0
textlint: 11.4.0
結果
"messages": [
{
"messages": [
],
"filePath": "<text>"
}
]
}
コード
import express from "express";
import { TextLintEngine } from "textlint";
import { TextlintMessage } from "@textlint/types";
const app = express();
app.get("/run-lint", async (req: any, res: any) => {
const engine = new TextLintEngine({
rulePaths: [
"node_modules/textlint-rule-max-ten",
"node_modules/textlint-rule-helper",
"node_modules/textlint-rule-no-mix-dearu-desumasu",
"node_modules/textlint-rule-preset-ja-technical-writing"
]
});
const messages = await engine.executeOnText("今日です。昨日だ。で、ほ、の、ぬ、ら").catch(e => {
return [{ messages: e }];
});
res.json({
messages: messages
});
});
module.exports = {
path: "/api",
handler: app
};
おそらくですが.textlintrcが無いか中身が空なのではないでしょうか
Answered by user41974 on December 28, 2021
手元の環境では正常に動作しています。
このサイトをご覧になっていて、まだお困りのようでしたらtextlintのルールが正しく入っているかなど、設定を見直してみてください。
Node.js: v10.15.3 (かなり古いですが…)
textlint: 11.4.0
OS: WIndows 10 Home 1903
ブラウザ: Chrome, Internet Explorer
import express from "express";
import { TextLintEngine } from "textlint";
import { TextlintMessage } from "@textlint/types";
const app = express();
app.get("/run-lint", async (req: any, res: any) => {
const engine = new TextLintEngine({
rulePaths: [
"node_modules/textlint-rule-max-ten",
"node_modules/textlint-rule-helper",
"node_modules/textlint-rule-no-mix-dearu-desumasu",
"node_modules/textlint-rule-preset-ja-technical-writing"
]
});
const messages = await engine.executeOnText("今日です。昨日だ。で、ほ、の、ぬ、ら").catch(e => {
return [{ messages: e }];
});
res.json({
messages: messages
});
});
module.exports = {
path: "/api",
handler: app
};
const PORT = process.env.PORT || 3000;
app.listen(PORT, function () {
console.log('App is listening on port 3000!');
});
{
"messages": [
{
"messages": [
{
"type": "lint",
"ruleId": "ja-technical-writing/max-ten",
"message": "一つの文で"、"を3つ以上使用しています",
"index": 14,
"line": 1,
"column": 15,
"severity": 2
},
{
"type": "lint",
"ruleId": "ja-technical-writing/ja-no-mixed-period",
"message": "文末が"。"で終わっていません。",
"index": 17,
"line": 1,
"column": 18,
"severity": 2
}
],
"filePath": "<text>"
}
]
}
Answered by payaneco on December 28, 2021
Get help from others!
Recent Answers
Recent Questions
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP