我正在處理兩個Node包,我們稱之爲Library和Consumer。庫負責在瀏覽器中渲染一堆東西。所有消費者都是import Library from 'library'
,並致電Library(someConfigHere)
- 這基本上只是一個測試,以確保庫正在做我所期望的瀏覽器。強制Browserify轉換依賴關係?
我已將npm link
ed庫轉換爲Consumer,並且試圖在Consumer上運行Browserify,但出現此錯誤:ParseError: 'import' and 'export' may appear only with 'sourceType: module'
。庫確實包含ES6 export
聲明,所以我猜測Browserify僅針對消費者而不是庫運行。
所以我的問題是:有沒有辦法強制Browserify轉換依賴關係以及?
這是我package.json
:
{
"name": "consumer",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"start": "budo index.js --port $PORT",
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
"devDependencies": {
"babel-preset-es2015": "^6.13.2",
"babel-preset-react": "^6.11.1",
"babelify": "^7.3.0",
"browserify-shim": "^3.8.12"
},
"browserify": {
"transform": [
"babelify"
]
},
"babel": {
"presets": [
"es2015",
"react"
]
}
}
這是消費者的index.js
:
import Library from 'library' // <= this is what isn't getting babelified
console.log(Library);
這是圖書館的index.js
:
export default (config) => {
console.log('Testing testing')
}
你的'tsconfig.json'文件是什麼樣的?像這樣的'ParseError'使得它聽起來像TS編譯器不通過文件。 –
@DaveV我不確定TS編譯器是什麼。 AFAIK'ParseError'是一個巴別塔的事情。 – Rob