我正在尝试在博览会安装上运行故事书。所以到目前为止,我只在应用程序中看到了博览会和故事书。
我无法启动网络故事书。
我的package.json看起来像这样:
"dependencies": {
"expo": "^32.0.0",
"react": "16.5.0",
"react-native": "https://github.com/expo/react-native/archive/sdk-32.0.0.tar.gz"
},
"devDependencies": {
"@babel/core": "^7.2.2",
"@babel/preset-env": "^7.2.3",
"@babel/preset-react": "^7.0.0",
"@babel/runtime": "^7.2.0",
"@storybook/addon-actions": "^4.1.6",
"@storybook/addon-knobs": "^4.1.6",
"@storybook/addon-links": "^4.1.6",
"@storybook/addon-ondevice-knobs": "^4.1.6",
"@storybook/addon-ondevice-notes": "^4.1.6",
"@storybook/addons": "^4.1.6",
"@storybook/react": "^4.1.6",
"@storybook/react-native": "^4.1.6",
"babel-loader": "^7",
"babel-preset-expo": "^5.0.0",
"prop-types": "^15.6.2",
"react-dom": "16.5.0"
},
我的babel.config.js看起来像这样;
module.exports = function(api) {
api.cache(true);
return {
presets: ['babel-preset-expo'],
};
};
我也尝试过:
module.exports = function(api) {
api.cache(true);
return {
presets: ["@babel/env", "@babel/react"],
};
};
尝试运行故事书时出现此错误:
ERROR in ./storybook/addons.js
Module build failed (from ./node_modules/@storybook/react-native/node_modules/babel-loader/lib/index.js):
Error: Plugin/Preset files are not allowed to export objects, only functions. In /Users/kristoffernielsen/repos/app/storybook/node_modules/babel-preset-react/lib/index.js
at createDescriptor (/Users/kristoffernielsen/repos/app/storybook/node_modules/@babel/core/lib/config/config-descriptors.js:178:11)
at items.map (/Users/kristoffernielsen/repos/app/storybook/node_modules/@babel/core/lib/config/config-descriptors.js:109:50)
at Array.map (<anonymous>)
at createDescriptors (/Users/kristoffernielsen/repos/app/storybook/node_modules/@babel/core/lib/config/config-descriptors.js:109:29)
at createPresetDescriptors (/Users/kristoffernielsen/repos/app/storybook/node_modules/@babel/core/lib/config/config-descriptors.js:101:10)
at passPerPreset (/Users/kristoffernielsen/repos/app/storybook/node_modules/@babel/core/lib/config/config-descriptors.js:58:96)
at cachedFunction (/Users/kristoffernielsen/repos/app/storybook/node_modules/@babel/core/lib/config/caching.js:33:19)
at presets.presets (/Users/kristoffernielsen/repos/app/storybook/node_modules/@babel/core/lib/config/config-descriptors.js:29:84)
at mergeChainOpts (/Users/kristoffernielsen/repos/app/storybook/node_modules/@babel/core/lib/config/config-chain.js:320:26)
at /Users/kristoffernielsen/repos/app/storybook/node_modules/@babel/core/lib/config/config-chain.js:283:7
at buildRootChain (/Users/kristoffernielsen/repos/app/storybook/node_modules/@babel/core/lib/config/config-chain.js:68:29)
at loadPrivatePartialConfig (/Users/kristoffernielsen/repos/app/storybook/node_modules/@babel/core/lib/config/partial.js:85:55)
at Object.loadPartialConfig (/Users/kristoffernielsen/repos/app/storybook/node_modules/@babel/core/lib/config/partial.js:110:18)
at Object.<anonymous> (/Users/kristoffernielsen/repos/app/storybook/node_modules/@storybook/react-native/node_modules/babel-loader/lib/index.js:140:26)
at Generator.next (<anonymous>)
at asyncGeneratorStep (/Users/kristoffernielsen/repos/app/storybook/node_modules/@storybook/react-native/node_modules/babel-loader/lib/index.js:3:103)
@ multi ./storybook/addons.js ./node_modules/@storybook/react-native/dist/manager/index.js manager[0]
即使我的addons.js为空,它也会失败。
答案 0 :(得分:0)
我已修复了此重命名删除或将文件重命名为rn-addons.js
答案 1 :(得分:0)
那对您没有帮助。 您仍然需要addon.js文件。
看这里:https://github.com/storybooks/storybook/issues/5249
我认为您需要等待。
https://github.com/storybooks/storybook/issues/5249#issuecomment-472179512
答案 2 :(得分:0)
只需将.babelrc
添加到具有默认反应本机或博览会预设的故事书文件夹中即可。
This为我工作:
{
"presets": ["module:metro-react-native-babel-preset"]
}