在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/HTML5  HTML/ 微信小程序引入其它js的方法,使用require和import有什么區(qū)別?

微信小程序引入其它js的方法,使用require和import有什么區(qū)別?

比如我的md5加密js放在了utils文件夾下,頁面的js需要引入md5的時候,使用require引入和import引入有什么區(qū)別?我看官方文檔里是說用require來引入,我看別人小程序代碼,引入js的時候有的時候也用import來引入。

回答
編輯回答
朽鹿
2017年9月25日 01:43
編輯回答
尤禮

requireimport沒有什么區(qū)別,這是兩種js模塊化規(guī)范而已,如果你的小程序用到了babel編譯,兩種寫法均可,如果沒有,那就用require語句,這是nodejs原生支持的

js模塊化

1.ES2015 import 語句

import App from './App';

import 'moment';

2.CommonJS require() 語句(nodejs支持)

const App = require('./App');

require('moment')

3.AMD define 和 require 語句(requirejs支持)
requirejs是一個早些時候?qū)崿F(xiàn)js模塊化的庫,現(xiàn)在基本沒怎么用了,大概是這種寫法吧

require(['jquery'], function(Lib){
    // do sth
});
2018年2月5日 11:12
編輯回答
無標(biāo)題

import和require的區(qū)別
node編程中最重要的思想就是模塊化,import和require都是被模塊化所使用。

遵循規(guī)范
require 是 AMD規(guī)范引入方式
import是es6的一個語法標(biāo)準(zhǔn),如果要兼容瀏覽器的話必須轉(zhuǎn)化成es5的語法

調(diào)用時間
require是運(yùn)行時調(diào)用,所以require理論上可以運(yùn)用在代碼的任何地方
import是編譯時調(diào)用,所以必須放在文件開頭

本質(zhì)
require是賦值過程,其實(shí)require的結(jié)果就是對象、數(shù)字、字符串、函數(shù)等,再把require的結(jié)果賦值給某個變量
import是解構(gòu)過程,但是目前所有的引擎都還沒有實(shí)現(xiàn)import,我們在node中使用babel支持ES6,也僅僅是將ES6轉(zhuǎn)碼為ES5再執(zhí)行,import語法會被轉(zhuǎn)碼為require

2017年6月29日 10:11