我已经使用npx create-react-app my-app --typescript
创建了一个应用程序,我希望对其进行配置,以便即使打字稿错误也可以继续编译我的应用程序,以便在准备就绪时可以返回它们。
对此,我看不到任何compilerOptions
。可能吗?
答案 0 :(得分:1)
var admin = require("firebase-admin");
var serviceAccount = require("/<my-folder-path>/<project-name>.json");
admin.initializeApp({
credential: admin.credential.cert(serviceAccount),
databaseURL: "https://<project-name>.firebaseio.com"
});
let db = admin.firestore();
let cityRef = db.collection('cities').doc('SF');
let getDoc = cityRef.get()
.then(doc => {
if (!doc.exists) {
console.log('No such document!');
} else {
console.log('Document data:', doc.data());
}
}).then(obj => {
let citiesRef = db.collection('cities');
let setSf = citiesRef.doc('SF').set({
name: 'San Francisco', state: 'CA', country: 'USA',
capital: false, population: 860000,
regions: ['west_coast', 'norcal']
}).then(fin => {
console.log("Finished");
}).catch(err => {
console.log('Error in set', err);
});
})
.catch(err => {
console.log('Error getting document', err);
});
诚然是Typescript菜鸟,但这使我花了很长时间才弄清楚。 CRA的默认值严格为true,这将导致编译失败,并出现各种错误。这是非常隐式的,看起来将其设置为true还会做很多其他事情:
{
"compilerOptions": {
...
strict: false
}
)
还有其他错误,我仍然无法编译,即:
enables --noImplicitAny, --noImplicitThis, --alwaysStrict, --strictBindCallApply, --strictNullChecks, --strictFunctionTypes and --strictPropertyInitialization.
我可以毫不费力地解决它,也许我没有按原本打算的方式使用Typescript,但我所希望的只是在IDE中查看警告,以便在准备就绪时可以返回警告之后我至少有一些概念证明。让我有些疯狂,即使我真的很喜欢并且已经从使用它中受益,我仍在考虑不使用TS重新启动。
我认为tsconfig docs上应该有一些内容,至少简要概述了此Property 'property' does not exist on type 'unknown'.
选项的含义,但是我偏离了话题。