Flutter:参数类型“String”不能分配给参数类型“Uri”[重复]

Posted

技术标签:

【中文标题】Flutter:参数类型“String”不能分配给参数类型“Uri”[重复]【英文标题】:Flutter : The argument type ‘String’ can’t be assigned to the parameter type ‘Uri’ [duplicate] 【发布时间】:2021-11-23 10:55:24 【问题描述】:

我正在创建一个 gif 搜索,但是当我必须插入 url 时,我收到以下消息“参数类型‘String’不能分配给参数类型‘Uri’”

我尝试使用的代码是...


import 'dart:convert';

import 'package:flutter/material.dart';

import 'package:http/http.dart' as http;

class HomePage extends StatefulWidget 
  const HomePage(Key? key) : super(key: key);

  @override
  _HomePageState createState() => _HomePageState();


class _HomePageState extends State<HomePage> 

  String _search ='';
  
  int _offset = 0;

  Future<Map>_getGifs() async 
    http.Response response;

    if(_search == nullnull || _search.isEmpty)
      response = await http.get("https://api.giphy.com/v1/gifs/trending?api_key=hyx64ldsiQzZCcFnKzZQZ4mQoTZUSp0L&limit=20&rating=g");
    else 
      response = await http.get("https://api.giphy.com/v1/gifs/search?api_key=$_search&limit=25&offset=$_offset&rating=g&lang=en");

    return json.decode(response.body);


  
  @override
  Widget build(BuildContext context) 
    return Container();
  

【问题讨论】:

【参考方案1】:

在之前版本的 Flutter 上你可以用 String 来做,但现在你需要把它放在Uri.parse(YOUR_URL)

【讨论】:

以上是关于Flutter:参数类型“String”不能分配给参数类型“Uri”[重复]的主要内容,如果未能解决你的问题,请参考以下文章

Flutter - 参数类型“String”不能分配给参数类型“Uri”[重复]

在 Flutter 中获取请求:- 'String' 不能分配给参数类型'Uri' [重复]

Flutter - 参数类型“Object”不能分配给参数类型“Map<String, dynamic>”

Flutter Future <String> 不能分配给参数类型字符串

Flutter-Firestore “参数类型 'Map<String, dynamic> Function()' 不能分配给参数类型 'Map<String, dynamic>

参数类型“字符串?”不能分配给参数类型“字符串”