在Metro.config.js中配置React-Native-obfuscating-transformer和React-native-SVG-Transformer
我想使用React-Native-SVG-Transformer和React-Native-obfuscating-TransFormer.ut在使用Merge Config方法进行配置时,它可以工作,但是在某些时候它会覆盖Metro中的React-native-svg-transformer 。
使用MergeConfig
const { getDefaultConfig, mergeConfig } = require("metro-config");
module.exports = (async () => {
const {
resolver: { sourceExts, assetExts },
} = await getDefaultConfig();
let config2 = {
transformer: {
babelTransformerPath: require.resolve("react-native-svg-transformer"),
},
resolver: {
assetExts: assetExts.filter((ext) => ext !== "svg"),
sourceExts: [...sourceExts, "svg"],
},
};
let config1 = {
transformer: {
babelTransformerPath: require.resolve("./transformer"),
},
};
return mergeConfig(config1, config2);
})();
和我尝试使用自定义变压器文件。但是我不确定我写的语法
var svgTransformer = require("react-native-svg-transformer");
module.exports.transform = function ({ src, filename, options }) {
if (filename.endsWith(".svg")) {
return svgTransformer.transform({ src, filename, options });
} else {
//return
return require("./transformer");
}
};
I want to use react-native-svg-transformer and react-native-obfuscating-transformer.but when configuring it using the merge config method time it works but when in some times it overwrites the react-native-svg-transformer in the metro.config file and react-native-svg-transformer started to not working .how can I resolve this.
using mergeConfig
const { getDefaultConfig, mergeConfig } = require("metro-config");
module.exports = (async () => {
const {
resolver: { sourceExts, assetExts },
} = await getDefaultConfig();
let config2 = {
transformer: {
babelTransformerPath: require.resolve("react-native-svg-transformer"),
},
resolver: {
assetExts: assetExts.filter((ext) => ext !== "svg"),
sourceExts: [...sourceExts, "svg"],
},
};
let config1 = {
transformer: {
babelTransformerPath: require.resolve("./transformer"),
},
};
return mergeConfig(config1, config2);
})();
and I tried using a custom transformer file .but I'm not sure about the syntax I wrote
var svgTransformer = require("react-native-svg-transformer");
module.exports.transform = function ({ src, filename, options }) {
if (filename.endsWith(".svg")) {
return svgTransformer.transform({ src, filename, options });
} else {
//return
return require("./transformer");
}
};
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我找到了一种反应 - 浮动转换器的替代方案。
。这解决了我问题的所有复杂。检查这些链接
https://www.npmtrends.com/@heroai/@heroai/react-native-native-native-native-native-native-bfuscating-trans-trans-transformcating-transformer-transformer-transformer-vs-vs-obfuscator-io-oio -metro-plugin-vs-vs-native-obfuscating-transformer-clone-vs-vs-vs-natter-obfuscator-vs-vs-vs-vs-react-natter-obscure
https://www.npmjs.com/package/package/obfuscator-io-io-metro-plugin
I found an alternative for react-native-obfuscating-transformer.
. this solved all the complex in my problem. check these links
https://www.npmtrends.com/@heroai/react-native-obfuscating-transformer-vs-obfuscator-io-metro-plugin-vs-react-native-obfuscating-transformer-clone-vs-react-native-obfuscator-vs-react-native-obscure
https://www.npmjs.com/package/obfuscator-io-metro-plugin