未定义不是一个对象(评估'_expo.Asset.loadAsync')
Undefined is not an object (evaluating '_expo.Asset.loadAsync')
我正在使用 React-Native 创建一个项目,目前当我尝试编译我的代码时收到一条错误消息 undefined is not an object (evaluating '_expo_.Asset.loadAsync')
我不完全确定是什么原因造成的,因为我在编译项目之前输入了很多代码。但是,根据我收集到的信息,这可能与我正在导入的字体有关?
目前这是我导入字体的代码。
async componentDidMount() {
await cacheFonts({
georgia: require('../assets/fonts/Georgia.ttf'),
regular: require('../assets/fonts/Montserrat-Regular.ttf'),
light: require('../assets/fonts/Montserrat-Light.ttf'),
});
this.setState({ fontLoaded: true });
}
这在类似代码中对我有用:
安装:
npm install expo-font
import * as Font from 'expo-font';
...
...
async componentDidMount() {
await Font.loadAsync({
'josefin-sans-regular': require('./assets/fonts/JosefinSans-Regular.ttf')
});
this.setState({ fontLoaded: true });
}
您没有显示导致错误的代码。但是你好像调用了Expo
的整个模块。
也许您使用了 import * as Expo from "expo"
和 Expo.Asset.loadAsync
对于 SDK 33
,我们反对从 expo
包中导入大多数模块。必须安装和使用每个模块。
你可以运行expo install expo-asset
import { Asset } from 'expo-asset';
...
Asset.loadAsync(modules)
如果你想像现在一样使用它,你可以使用这个模块。 expo-codemod
我正在使用 React-Native 创建一个项目,目前当我尝试编译我的代码时收到一条错误消息 undefined is not an object (evaluating '_expo_.Asset.loadAsync')
我不完全确定是什么原因造成的,因为我在编译项目之前输入了很多代码。但是,根据我收集到的信息,这可能与我正在导入的字体有关?
目前这是我导入字体的代码。
async componentDidMount() {
await cacheFonts({
georgia: require('../assets/fonts/Georgia.ttf'),
regular: require('../assets/fonts/Montserrat-Regular.ttf'),
light: require('../assets/fonts/Montserrat-Light.ttf'),
});
this.setState({ fontLoaded: true });
}
这在类似代码中对我有用:
安装:
npm install expo-font
import * as Font from 'expo-font';
...
...
async componentDidMount() {
await Font.loadAsync({
'josefin-sans-regular': require('./assets/fonts/JosefinSans-Regular.ttf')
});
this.setState({ fontLoaded: true });
}
您没有显示导致错误的代码。但是你好像调用了Expo
的整个模块。
也许您使用了 import * as Expo from "expo"
和 Expo.Asset.loadAsync
对于 SDK 33
,我们反对从 expo
包中导入大多数模块。必须安装和使用每个模块。
你可以运行expo install expo-asset
import { Asset } from 'expo-asset';
...
Asset.loadAsync(modules)
如果你想像现在一样使用它,你可以使用这个模块。 expo-codemod