Typescript抱怨导入的json模块上缺少分号

时间:2020-04-09 22:07:32

标签: json typescript vue.js npm webpack

我正在尝试使用 <script> function pr() { var foobar = 100; <!-- works --> <!-- document.getElementById("Sum").innerHTML = +document.getElementById('n1').value ; works --> <!-- works --> <!-- document.getElementById("Sum").innerHTML = +document.getElementById('n2').value ; works --> <!-- works --> <!-- document.getElementById("Sum").innerHTML = +document.getElementById('n1').value +foobar ; --> <!-- concatenates as strings: why? --> document.getElementById("Sum").innerHTML = parseInt(document.getElementById('n1').value) +parseInt(document.getElementById('n2').value) ; } </script> 将本地JSON对象加载到我的Vuex存储中。 我在const tree = import('@/articles/tree.json');中启用了"resolveJsonModule": true,,它可以很好地加载,但是tsconfig.json发出警告,例如:

NPM

我认为Webpack正在尝试将JSON作为Typescript文件写入。我如何才能停止这样做?

这是有问题的json文件。

WARNING in /home/benjamin/dev/learn-wgpu2/src/articles/tree.json(1,8654):
1:8654 Missing semicolon

我正在使用这些数据来重写我的教程/博客sotrh.github.io/learn-wgpu

1 个答案:

答案 0 :(得分:1)

在您的toc中添加以下内容,以防止递归删除项目中的所有json文件:

syms x
error = 0;
fun = 0; 
N = 10; 
b = 4; 
a = 0; 
f = (1+x)^(3/2);
f1 = @(y)(1+y)^(3/2);
t = cputime;
fun1 = double(int(f,x,a,b)); 
for N = 10:1000
    fun = 0;
    h = (b-a)/N;
    for i = 0:h:4-h
        fun = fun + (h/2)*(f1(i) + f1(i+h)); 
    end
    error = abs(fun1-fun); 
    if(error < 0.00001)
       break;
    end
end
t = cputime - t; 
fprintf('Approximate Value: %f\n',fun);
fprintf('N Value: %d\n',N);
fprintf('Computation time: %f\n',t);

有关更多信息,请参见this GitHub问题。