Shinyプロジェクトではグローバル変数を使用しています。私はいつも<を使用してエラーを作ります - < < - を使用してください。しかし、狂ったことは、変数がグローバル環境に存在する場合に存在しないローカル変数に代入しようとすると、Rがエラーをスローしないということです。ローカルには存在しないが、グローバルには存在しない変数にローカルに割り当てるときにエラーが表示されない
これはバグですか、またはここにbbb $ bbb割り当てがccc $ ccc割り当てのようにエラーを発生させない何らかの理由がありますか?
aaa <- list(aaa="old")
bbb <- list(bbb="old")
f = function(x){
aaa$aaa <<- x
bbb$bbb <- x
ccc$ccc <- x
}
f("new")
#Error in ccc$ccc <- x : object 'ccc' not found
aaa
#$aaa
#[1] "new"
bbb
#$bbb
#[1] "old"
ccc
#Error: object 'ccc' not found
だから、あなたはccc $ cccに対して、エラーは '* temp *' < - x;によってスローされると言っています。しかし、bbb $ bbbの場合、それは地球環境で見つかったのでエラーではありませんか? – 3D0G
Shinyでは、ユーザーがWebページ上に何らかのデータを入力すると、server()関数内のobserveEvent()関数内で制御を取得します。私はデータを保存したいので、実際にはそれをグローバルに割り当ててグローバルにファイルに保存するしかありません。 observeEvent()が返ってくると、それはserver()に戻り、制御が失われるので、(the_data)を返す場所はありません。 – 3D0G
最初のコメントはYesです。私は光沢を使用しないが、それは悪いプログラミングの慣行を必要とするのではないかと疑う。 – Roland