2017-11-15 1 views
0

私はlinkのように私のアプリケーションを再構築しようとします。私は多階調のダッシュボードを持っており、それぞれのトピックを別々のUIファイルとサーバーファイルに入れて、コードをよりよく制御したいと考えています。マルチファイルの光沢のあるダッシュボード

tabPanel("Tab 1", uiOutput("content1"))(content1は、サーバファイルである):

メインファイル(app.R)はsource(file.path("ui", "tab1.R"), local = TRUE)$value tab1.Rを使用して他のファイルと例えばUIと接触しているように見えますが。

私はtabPanelを1つのファイルに置くことができます。私はそのような何かを行うことができますことを考えた: tab1.Rは、次のようになります。

aaa <- tabPanel("Tab 2", uiOutput("content2")) 
bbb <- tabPanel("Tab 1", uiOutput("content1")) 

そして使用して彼らと連絡:

source(file.path("ui", "tab1.R"), local = TRUE)$aaa 
source(file.path("ui", "tab1.R"), local = TRUE)$bbb 

をしかし、私はエラーを取得:

Error in attr(x, "selected") <- TRUE : 
    attempt to set an attribute on NULL 

私はどこにでもその答えを見つけることができませんでしたので、私はここに助けを書くことを断念しました

答えて

1

見つかりました

aaa <- function(){tabPanel("Tab 2", uiOutput("content2"))} 
bbb <- function(){tabPanel("Tab 1", uiOutput("content1"))} 

そして、ファイルの上に私がアップロードソース:IMO最良の方法は、私だけの機能を使用

source(file.path("ui", "tab1.R"), local = TRUE) 

今、私は通常、コード内の関数を使用することができます。

aaa() 
bbb() 
関連する問題