我有一个 typedef 的 JSDoc 注释,如下所示,
/**
* Lorem ipsum dolor...
* @typedef {Object} NotificationOptions
* @property {boolean} foo - Property 1
* @property {boolean} bar - Property 2
*/
Run Code Online (Sandbox Code Playgroud)
除了 foo 和 bar 之外,如何向对象添加任何其他属性?(属性可以是任意类型,因此类型灵活)
我有一个关于打字稿接口定义的示例,如下所示。我希望我的 JSDoc 与 TS 上的接口定义具有类似的效果。
export interface FooBar {
foo: boolean;
bar: boolean;
[key: string]: any;
}
Run Code Online (Sandbox Code Playgroud)
我知道它是可选的,并且代码可以在没有 typedef 的情况下顺利运行。只是好奇,想要有一个干净、良好的代码。
谢谢你!
所以,我有一个 Laravel 网络并有一些表,其中两个是users和user_data。
user_data有一个user_id引用idon的外键users。
users具有用户名、电子邮件、密码等一般属性,并且user_data与usersgame_money、game_job、game_tier等具有 1 对 1 的关系。如果我将这 2 个组合到 1 个表中,列太长,所以我很难规范化它。
用户注册工作顺利。但是我不知道如何user_data在新用户注册时添加新条目并在users. 中的属性列user_data(如 game_money 等)是由 laravel 之外的外部应用程序填充的,所以我只需要user_data.user_id在外键中添加一个条目,并让 user_data 中的其他属性在被更新之前使用默认值或 null外部应用程序。
这是我的user_data迁移:
Schema::create('user_data', function (Blueprint $table) {
$table->unsignedBigInteger('user_id');
$table->foreign('user_id')->references('id')->on('users');
$table->string('account_tier')->default("Free");
$table->float('economy')->default(0);
$table->string('job')->nullable();
$table->timestamps();
});
Run Code Online (Sandbox Code Playgroud)
我应该将插入查询放在 Laravel 中的什么位置?或者我应该处理user_data使用外部应用程序?
非常感谢。