记录不通过webpack而直接使用import导入模块,在浏览器上执行es6的语法的过程

最近准备写个react的小项目,文档之前已经看完了,按部就班使用的webpack打包,一切正常。
今天脱档写代码之前,突然想起脱离了打包工具,支持es6的浏览又是如何直接执行es6的语法,以及需要哪些工具呢?借此强化对一些js基础的了解与记忆。

es6支持的import(module)语法的浏览器的情况。https://caniuse.com/#search=module
在这里插入图片描述
使用的chrome浏览器,检查版本chrome://version 发现符合。
在这里插入图片描述

目录结构
在这里插入图片描述
浏览器加载es6的语法使用标签

<script typ="module" > </script>

这个标签内部不允许有注释的内容
在这里插入图片描述
在这里插入图片描述
先用代码块加载一个模块

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
	</head>
	<body>
		<script type="module">
			import { counter, name} from 'file:///D:/wamp/wamp/www/react/test1/supportEs6Test/counter.js';
			console.log(name);
		</script>
	</body>
</html>

counter.js

export function counter(count=100){
	return ++count;
}
export const name="import成功";

使用文件路径(会调用file协议)直接打开html文件,存在跨域的问题
这里有解释
在这里插入图片描述
所以我们用服务器加载文件

nodejs建立一个server.js文件后,本目录运行 node server.js

var express = require('express');
var path = require('path');

var app = express();

//设置静态路径
app.use(express.static(path.join(__dirname,'/')));

app.get('/',function(request, response){
	console.log('主页get请求');
	response.sendFile(path.join(__dirname, 'index.html'));
})

var server = app.listen(8888,'0.0.0.0', function(){
	var host = server.address().address;
	var port = server.address().port;
	console.log('应用实例,访问地址为http://%s:%s', host, port);
})

在这里插入图片描述
显示成功
在这里插入图片描述
或者使用文件加载
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
成功
在这里插入图片描述

参考文章:

Module 的加载实现【第一部分】
浅谈FIle协议与Http协议及区别

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值