ES模块导入问题
问题描述:关于es6如何被导入使用,搜索很多资料,实际上关于如何导入,就是一句话的问题。在前端中写如下网:
<!DOCTYPE html>
<html lang="en">
<head>
<head>
<title>three.js webgl - ex2</title>
<meta charset="utf-8">
</head>
<body>
<script type="module">
import * as THREE from './node_modules/three/build/three.module.js';
</script>
<P>你好,three.js</P>
</body>
</html>
实际上以上已经是导入模块的一个简单写法,通过谷歌浏览器直接打开这个网页,但是汇报以下的错误
three.module.js:1 Failed to load module script: The server responded with a non-JavaScript MIME type of "". Strict MIME type checking is enforced for module scripts per HTML spec.
解决办法:
以上问题呢,需要配置一个网页服务器,我使用的是nginx ,然后将这个网页部署到服务器中,然后启动服务器就不会产生一样的问题,网页就可以正常运行。
总结:
以上的解决方法跟遇到的问题,我相信并不是我一个人遇到的,网页如果是通过浏览器直接打开和步入到服务器中,在服务器打开实际上是不一样的,如果把网页部署到服务器中再打开就会避免很多不必要的问题,比如说本地文件的跨域访问,应该也不会出现。
还是那句话,技术很多问题都是理论与实际的联合点,多想方法,在实践中找到一种正确解决问题的方法,这才是技术所需要探寻的。