【发布时间】:2020-07-22 15:42:39
【问题描述】:
我正在尝试使用 const tree = import('@/articles/tree.json'); 将本地 JSON 对象加载到我的 Vuex 存储中。
我在tsconfig.json 中启用了"resolveJsonModule": true,,它可以正常加载,但NPM 会在输出中显示以下警告:
WARNING in /home/benjamin/dev/learn-wgpu2/src/articles/tree.json(1,8654):
1:8654 Missing semicolon
我认为 Webpack 正在尝试将 JSON 作为 Typescript 文件进行 lint。如何让它停止这样做?
这是有问题的 json 文件。
{"path":"src/articles/","name":"articles","display":"","type":"folder","children":[{"path":"src/articles//about.md","name":"about.md","display":"/about.md","type":"file"},{"path":"src/articles//beginner","name":"beginner","display":"/beginner","type":"folder","children":[{"path":"src/articles//beginner/tutorial1-window","name":"tutorial1-window","display":"/beginner/tutorial1-window","type":"folder","children":[{"path":"src/articles//beginner/tutorial1-window/README.md","name":"README.md","display":"/beginner/tutorial1-window/README.md","type":"file"}]},{"path":"src/articles//beginner/tutorial2-swapchain","name":"tutorial2-swapchain","display":"/beginner/tutorial2-swapchain","type":"folder","children":[{"path":"src/articles//beginner/tutorial2-swapchain/README.md","name":"README.md","display":"/beginner/tutorial2-swapchain/README.md","type":"file"},{"path":"src/articles//beginner/tutorial2-swapchain/cleared-window.png","name":"cleared-window.png","display":"/beginner/tutorial2-swapchain/cleared-window.png","type":"file"}]},{"path":"src/articles//beginner/tutorial3-pipeline","name":"tutorial3-pipeline","display":"/beginner/tutorial3-pipeline","type":"folder","children":[{"path":"src/articles//beginner/tutorial3-pipeline/README.md","name":"README.md","display":"/beginner/tutorial3-pipeline/README.md","type":"file"},{"path":"src/articles//beginner/tutorial3-pipeline/tutorial3-pipeline-composite.svg","name":"tutorial3-pipeline-composite.svg","display":"/beginner/tutorial3-pipeline/tutorial3-pipeline-composite.svg","type":"file"},{"path":"src/articles//beginner/tutorial3-pipeline/tutorial3-pipeline-triangle.png","name":"tutorial3-pipeline-triangle.png","display":"/beginner/tutorial3-pipeline/tutorial3-pipeline-triangle.png","type":"file"},{"path":"src/articles//beginner/tutorial3-pipeline/tutorial3-pipeline-vertices.png","name":"tutorial3-pipeline-vertices.png","display":"/beginner/tutorial3-pipeline/tutorial3-pipeline-vertices.png","type":"file"},{"path":"src/articles//beginner/tutorial3-pipeline/tutorial3-pipeline-vertices.svg","name":"tutorial3-pipeline-vertices.svg","display":"/beginner/tutorial3-pipeline/tutorial3-pipeline-vertices.svg","type":"file"}]},{"path":"src/articles//beginner/tutorial4-buffer","name":"tutorial4-buffer","display":"/beginner/tutorial4-buffer","type":"folder","children":[{"path":"src/articles//beginner/tutorial4-buffer/README.md","name":"README.md","display":"/beginner/tutorial4-buffer/README.md","type":"file"},{"path":"src/articles//beginner/tutorial4-buffer/figures.svg","name":"figures.svg","display":"/beginner/tutorial4-buffer/figures.svg","type":"file"},{"path":"src/articles//beginner/tutorial4-buffer/gradient.png","name":"gradient.png","display":"/beginner/tutorial4-buffer/gradient.png","type":"file"},{"path":"src/articles//beginner/tutorial4-buffer/indexed-pentagon.png","name":"indexed-pentagon.png","display":"/beginner/tutorial4-buffer/indexed-pentagon.png","type":"file"},{"path":"src/articles//beginner/tutorial4-buffer/pentagon.png","name":"pentagon.png","display":"/beginner/tutorial4-buffer/pentagon.png","type":"file"},{"path":"src/articles//beginner/tutorial4-buffer/triangle.png","name":"triangle.png","display":"/beginner/tutorial4-buffer/triangle.png","type":"file"},{"path":"src/articles//beginner/tutorial4-buffer/vb_desc.png","name":"vb_desc.png","display":"/beginner/tutorial4-buffer/vb_desc.png","type":"file"}]},{"path":"src/articles//beginner/tutorial5-textures","name":"tutorial5-textures","display":"/beginner/tutorial5-textures","type":"folder","children":[{"path":"src/articles//beginner/tutorial5-textures/README.md","name":"README.md","display":"/beginner/tutorial5-textures/README.md","type":"file"},{"path":"src/articles//beginner/tutorial5-textures/address_mode.png","name":"address_mode.png","display":"/beginner/tutorial5-textures/address_mode.png","type":"file"},{"path":"src/articles//beginner/tutorial5-textures/address_mode.xcf","name":"address_mode.xcf","display":"/beginner/tutorial5-textures/address_mode.xcf","type":"file"},{"path":"src/articles//beginner/tutorial5-textures/happy-tree-uv-coords.png","name":"happy-tree-uv-coords.png","display":"/beginner/tutorial5-textures/happy-tree-uv-coords.png","type":"file"},{"path":"src/articles//beginner/tutorial5-textures/happy-tree-uv-coords.xcf","name":"happy-tree-uv-coords.xcf","display":"/beginner/tutorial5-textures/happy-tree-uv-coords.xcf","type":"file"},{"path":"src/articles//beginner/tutorial5-textures/happy-tree.png","name":"happy-tree.png","display":"/beginner/tutorial5-textures/happy-tree.png","type":"file"},{"path":"src/articles//beginner/tutorial5-textures/happy-tree.xcf","name":"happy-tree.xcf","display":"/beginner/tutorial5-textures/happy-tree.xcf","type":"file"},{"path":"src/articles//beginner/tutorial5-textures/rightside-up.png","name":"rightside-up.png","display":"/beginner/tutorial5-textures/rightside-up.png","type":"file"},{"path":"src/articles//beginner/tutorial5-textures/upside-down.png","name":"upside-down.png","display":"/beginner/tutorial5-textures/upside-down.png","type":"file"}]},{"path":"src/articles//beginner/tutorial6-uniforms","name":"tutorial6-uniforms","display":"/beginner/tutorial6-uniforms","type":"folder","children":[{"path":"src/articles//beginner/tutorial6-uniforms/README.md","name":"README.md","display":"/beginner/tutorial6-uniforms/README.md","type":"file"},{"path":"src/articles//beginner/tutorial6-uniforms/newtranspipe.png","name":"newtranspipe.png","display":"/beginner/tutorial6-uniforms/newtranspipe.png","type":"file"},{"path":"src/articles//beginner/tutorial6-uniforms/static-tree.png","name":"static-tree.png","display":"/beginner/tutorial6-uniforms/static-tree.png","type":"file"}]},{"path":"src/articles//beginner/tutorial7-instancing","name":"tutorial7-instancing","display":"/beginner/tutorial7-instancing","type":"folder","children":[{"path":"src/articles//beginner/tutorial7-instancing/README.md","name":"README.md","display":"/beginner/tutorial7-instancing/README.md","type":"file"},{"path":"src/articles//beginner/tutorial7-instancing/forest.png","name":"forest.png","display":"/beginner/tutorial7-instancing/forest.png","type":"file"},{"path":"src/articles//beginner/tutorial7-instancing/instance_texture.png","name":"instance_texture.png","display":"/beginner/tutorial7-instancing/instance_texture.png","type":"file"},{"path":"src/articles//beginner/tutorial7-instancing/instance_texture_scaled.png","name":"instance_texture_scaled.png","display":"/beginner/tutorial7-instancing/instance_texture_scaled.png","type":"file"},{"path":"src/articles//beginner/tutorial7-instancing/instance_texture_scaled.xcf","name":"instance_texture_scaled.xcf","display":"/beginner/tutorial7-instancing/instance_texture_scaled.xcf","type":"file"}]},{"path":"src/articles//beginner/tutorial8-depth","name":"tutorial8-depth","display":"/beginner/tutorial8-depth","type":"folder","children":[{"path":"src/articles//beginner/tutorial8-depth/README.md","name":"README.md","display":"/beginner/tutorial8-depth/README.md","type":"file"},{"path":"src/articles//beginner/tutorial8-depth/forest.xcf","name":"forest.xcf","display":"/beginner/tutorial8-depth/forest.xcf","type":"file"},{"path":"src/articles//beginner/tutorial8-depth/forest_fixed.png","name":"forest_fixed.png","display":"/beginner/tutorial8-depth/forest_fixed.png","type":"file"},{"path":"src/articles//beginner/tutorial8-depth/forest_with_zoom.png","name":"forest_with_zoom.png","display":"/beginner/tutorial8-depth/forest_with_zoom.png","type":"file"},{"path":"src/articles//beginner/tutorial8-depth/forest_with_zoom.xcf","name":"forest_with_zoom.xcf","display":"/beginner/tutorial8-depth/forest_with_zoom.xcf","type":"file"}]},{"path":"src/articles//beginner/tutorial9-models","name":"tutorial9-models","display":"/beginner/tutorial9-models","type":"folder","children":[{"path":"src/articles//beginner/tutorial9-models/README.md","name":"README.md","display":"/beginner/tutorial9-models/README.md","type":"file"},{"path":"src/articles//beginner/tutorial9-models/cube-diffuse.jpg","name":"cube-diffuse.jpg","display":"/beginner/tutorial9-models/cube-diffuse.jpg","type":"file"},{"path":"src/articles//beginner/tutorial9-models/cubes-correct.png","name":"cubes-correct.png","display":"/beginner/tutorial9-models/cubes-correct.png","type":"file"},{"path":"src/articles//beginner/tutorial9-models/cubes.png","name":"cubes.png","display":"/beginner/tutorial9-models/cubes.png","type":"file"}]}]},{"path":"src/articles//hello.md","name":"hello.md","display":"/hello.md","type":"file"},{"path":"src/articles//tree.json","name":"tree.json","display":"/tree.json","type":"file"}]}
我正在使用这些数据重写我的教程/博客sotrh.github.io/learn-wgpu。
【问题讨论】:
-
Webpack 不会检查你的代码,你可能已经安装了
ESLint或TSLint。 -
我有一个 tslint.json 文件,所以它可能是
TSLint。 -
如果你想完全禁用分号的linting,你可以将
"semicolon": [true, "never"]作为规则添加到tslint.json。 -
这适用于分号,但还有很多其他的 linting 错误需要更改。我想在使用 Webpack 导入 JSON 文件时完全禁用 linting,同时保持常规文件的 linting。
标签: json typescript vue.js npm webpack