【发布时间】:2021-01-26 02:58:24
【问题描述】:
我正在将我的 ionic 应用程序迁移到 flutter,我有一些需要拆分和显示的数据。
字符串看起来像这样PRE-AUTHORIZATION=MANDATORY AT NON-PANEL HOSPITALS|||||HOSPITAL NETWORK=220+ FACILITIES NATIONWIDE|||||
我需要在 ||||| 时换行这来分裂这个词=
打字稿中的代码看起来像这样
const policies = this.wording.split('|').filter(w => w !== '');
this.displayData = [];
policies.forEach((policy) => {
const splited = policy.split('=');
const displayPolicy = {name: splited[0], value: splited[1]};
this.displayData.push(displayPolicy);
});
任何人请告诉我如何在颤振应用程序中显示这些数据,就像在图像中一样谢谢
这是我正在使用的完整代码
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:http/http.dart' as http;
import 'package:http/http.dart';
import 'dart:convert';
import 'dart:io';
import 'package:flutter_secure_storage/flutter_secure_storage.dart';
class BenefitScreen extends StatefulWidget {
@override
_BenefitScreenState createState() => _BenefitScreenState();
}
class _BenefitScreenState extends State<BenefitScreen> {
@override
initState() {
super.initState();
doSomeAsyncStuff();
}
Future<String> doSomeAsyncStuff() async {
final storage = new FlutterSecureStorage();
String value = await storage.read(key: 'company_id');
print(value);
String url2 =
'gttps://api?company_id=${value}';
final response2 = await http.get(url2);
var Data = json.decode(response2.body);
print(Data);
print(Data["records"][0]["policies"][0]["policywording"]);
var DisplayData = Data["records"][0]["policies"][0]["policywording"]; // This is the data which need to split
return DisplayData;
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
centerTitle: true,
title: Text('IGI GENERAL INSURANCE'),
),
body: FutureBuilder<String>(
future: doSomeAsyncStuff(),
builder: (BuildContext context, AsyncSnapshot<String> snapshot) {
if (snapshot.hasData) {
print(snapshot.data);
return Text('Here in ned to show data');
} else if (snapshot.hasError) {
return Padding(
padding: const EdgeInsets.only(top: 16),
child: Text('Error: ${snapshot.error}'),
);
} else {
return Padding(
padding: EdgeInsets.only(top: 16),
child: Text('Awaiting result...'),
);
}
}),
);
}
}
还有一件事所有字符串都不包含 = 符号来拆分。我已经附上了图片,你可以看到第一个值没有 = 符号并且它以蓝色文本显示。
【问题讨论】: