SharePoint Framework 企業嚮導(三)

Justin-Liu發表於2017-06-01

部落格地址:http://blog.csdn.net/FoxDave

透視檢視:SharePoint在更廣泛的SharePoint平臺中

SPFx是一個新的模型,附加在已存在的方法上,但是專注於為使用者介面自定義提供更多的價值如客戶端web部件。該框架被設計用來跟現有的模型一起工作,並且更容易以一種更廣泛和持久的支援方式建立新的使用者介面自定義部署。

對比Add-ins

SharePoint Add-ins,之前被稱作SharePoint應用程式(SharePoint 2013版本被引入),曾經是唯一的被SharePoint Online支援和管理的自定義選項。然而在很多情況下,SharePoint Add-ins需要相比簡單的使用者介面自定義所需要的必要的工作多得多的架構工作。SharePoint Add-ins有兩個型別:SharePoint承載和提供方承載。SharePoint承載的Add-ins以SharePoint支援的方式執行客戶端程式碼,但正像剛才所說的即使是一個客戶端web部件也需要比必要工作多得多的工作。在很多情況下是構建SharePoint承載的Add-ins來部署元件,如SharePoint網站中的列表和web部件。這些web部件在一個特殊的網站存在,即應用程式網站,它只有有限的功能,專門用於承載Add-ins。另一方面,提供方承載的Add-ins能同時執行服務端程式碼和客戶端程式碼,對SharePoint Online進行遠端呼叫(注意這裡說的服務端程式碼是指C#後臺程式碼,而非SharePoint服務端物件模型,Online是無法執行Server API的)。這對獨立軟體供應商是有利的,可以保護他們的智慧財產權、程式碼和邏輯,也適用於無法執行客戶端指令碼的場景,如長時間執行、繁瑣的計算操作或是無法用客戶端指令碼實現的訪問遠端資料來源等操作。Add-ins的主要優勢是獨立性:實際的程式碼並不是在SharePoint網站瀏覽器跨站指令碼保護中執行,這可以方式Add-in獲得跟當前登入使用者一樣的訪問許可權。Add-ins的只能在安裝的過程中授權,這使得管理員從第三方獲取Add-in時更加安全,同時也相對獨立地存在於微軟商店中,使用者可以自行搜尋下載安裝。

SPFx跟SharePoint Add-ins並肩工作,並且可以替代只需要客戶端指令碼的場景。例如,Add-ins能夠向網站新增應用程式部件。這些應用程式部件跟web部件類似,區別在於:web部件是在網站頁面的上下文中執行,而應用程式部件是執行在他們自己的獨立域(上文中提到的應用程式網站或提供方承載的網站)下,以iframe的形式嵌入到頁面中。另一方面,SPFx並不是在iframe中執行的。得益於此,它能以更無縫的方式在頁面上下文執行,提供給使用者更強大的互動功能。這使它可以執行豐富的函式,但同時沒有像Add-ins一樣的安全控制。SPFx解決方案也因此被稱為是完全信任的客戶端解決方案。同時由於iframe是非響應式的,所以在移動端和備用顯示器上顯示得不是那麼好。

基於前面提到的安全方面的原因,SPFx解決方案目前並沒有商店來讓你下載和安裝解決方案。另一方面,在許多情形下使用使用者上下文是期望的場景的情況下,可以使用SPFx替代。

相關文章