ã³ã³ãã³ããšã¯ã¹ãããŒã©
ã³ã³ãã³ããšã¯ã¹ãããŒã©
Box Content Explorer UI Elementã䜿çšãããšãéçºè ã¯ãBoxã«ä¿åãããŠããã³ã³ãã³ãã®ãã©ã«ããã¥ãŒããã¹ã¯ããããŸãã¯ã¢ãã€ã«ãŠã§ãã¢ããªã«åã蟌ãããšãã§ããŸããã©ã€ãã©ãªã¯Box APIãä»ããŠæå®ããããã©ã«ãã«é¢ããæ å ±ãååŸããåŸãã¡ã€ã³ã®BoxãŠã§ãã¢ããªãšåæ§ã«ãã®ã³ã³ãã³ãããã©ã«ããã¥ãŒã«ã¬ã³ããªã³ã°ããŸãããŠãŒã¶ãŒã¯ããã®ãã©ã«ãéå±€å ã移åããååã®å€æŽãåé€ãå ±æãªã©ã®ãã¡ã€ã«æäœãå®è¡ã§ããŸãã
ã³ã³ãã³ããšã¯ã¹ãããŒã©ã§ãã¡ã¿ããŒã¿ãã¥ãŒã䜿çšã§ããããã«ãªããŸããããã®ãã¥ãŒã§ã¯ãã¡ã¿ããŒã¿ã¯ãšãªã䜿çšããŠãã¡ã¿ããŒã¿ã«åºã¥ããŠãã¡ã€ã«ããã©ã«ããæ€çŽ¢ã§ããŸããããŒã¿ã¯åã蟌ã¿ã®ãã¥ãŒã«è¡šç€ºãããŸãã
ã€ã³ã¹ããŒã«
NPMãŸãã¯Box CDNçµç±ã§Box UI Elementsãã€ã³ã¹ããŒã«ããæ¹æ³ã¯ããã¡ããåç §ããŠãã ããã
èªèšŒ
UI Elementã¯èªèšŒã«äŸåããªãæ¹æ³ã§èšèšãããŠãããããBoxã¢ã«ãŠã³ããæã€ãŠãŒã¶ãŒ (管ç察象ãŠãŒã¶ãŒ) ãšBox以å€ã®ã¢ã«ãŠã³ããæã€ãŠãŒã¶ãŒ (App User) ã®ã©ã¡ãã«UI Elementã䜿çšãããã©ããã«é¢ä¿ãªããUI Elementã䜿çšããã®ã«ç¹å¥ãªèšå®ã¯å¿ èŠãããŸããããã®çç±ã¯ãUI Elementã¯èªèšŒã®ããã«ãããŒã¯ã³ããåãåãããšã®ã¿ãäºæããŠãããBoxã«ã¯ããŒã¯ã³ã®çææ¹æ³ãšããŠOAuthãšJWTã®2ã€ãããããã§ãã
èªèšŒæ¹æ³ã®éžæã«ã€ããŠç¢ºèªãã
ãµã³ãã«HTML
<!DOCTYPE html>
<html lang="en-US">
<head>
<meta charset="utf-8" />
<title>Box Content Explorer Demo</title>
<!-- Latest version of the explorer css for your locale -->
<link
rel="stylesheet"
href="https://cdn01.boxcdn.net/platform/elements/{VERSION}/en-US/explorer.css" />
</head>
<body>
<div class="container" style="height:600px"></div>
<!-- Latest version of the explorer js for your locale -->
<script src="https://cdn01.boxcdn.net/platform/elements/{VERSION}/en-US/explorer.js"></script>
<script>
var folderId = "123";
var accessToken = "abc";
var contentExplorer = new Box.ContentExplorer();
contentExplorer.show(folderId, accessToken, {
container: ".container",
});
</script>
</body>
</html>
ãã¢
API
const { ContentExplorer } = Box;
const contentExplorer = new ContentExplorer();
/**
* Shows the content explorer.
*
* @param {string} folderId - The root folder id
* @param {string} accessToken - Box API access token
* @param {Object} [options] - Options
* @return {void}
*/
contentExplorer.show(folderId, accessToken, options);
/**
* Hides the content explorer, removes all event listeners, and clears out the
* HTML.
*
* @return {void}
*/
contentExplorer.hide();
/**
* Clears out the internal in-memory
* cache for the content explorer forcing
* re-load of items via the API.
*
* @public
* @return {void}
*/
contentExplorer.clearCache();
/**
* Adds an event listener to the content explorer. Listeners should be added
* before calling show() so no events are missed.
*
* @param {string} eventName - Name of the event
* @param {Function} listener - Callback function
* @return {void}
*/
contentExplorer.addListener(eventName, listener);
/**
* Removes an event listener from the content explorer.
*
* @param {string} eventName - Name of the event
* @param {Function} listener - Callback function
* @return {void}
*/
contentExplorer.removeListener(eventName, listener);
/**
* Removes all event listeners from the content explorer.
*
* @return {void}
*/
contentExplorer.removeAllListeners();
ãã©ã¡ãŒã¿
ãã©ã¡ãŒã¿ | å | 説æ |
---|---|---|
folderId | String | Boxãã©ã«ãã®IDãäžã移åãããã©ã«ãã®IDã«ãªããŸããBoxã® [ãã¹ãŠã®ãã¡ã€ã«] ãã©ã«ãã䜿çšããå Žåã¯ãfolderId ãšããŠ0 ã䜿çšããŸãã |
accessToken | String | 䜿çšããBox APIã¢ã¯ã»ã¹ããŒã¯ã³ããã®ããŒã¯ã³ã«ã¯ãäžèšã®ãã©ã«ãã«å¯Ÿããèªã¿åã/æžã蟌ã¿ã¢ã¯ã»ã¹æš©éãå¿ èŠã§ãããã®ããŒã¯ã³ã®ããã«æž¡ãããå€ã¯ããšã¯ã¹ãããŒã©ã®è¡šç€ºäžã¯æå¹æéåãã«ãªããªãããšãåæãšãªã£ãŠããŸãã |
options | Object | çç¥å¯èœãªãªãã·ã§ã³ã詳现ã¯ä»¥äžãåç
§ããŠãã ãããããšãã°ãcontentExplorer.show(FOLDER_ID, TOKEN, {canDelete: false}) ã䜿çšãããšãåé€ãªãã·ã§ã³ãé衚瀺ã«ãªããŸãã |
ãªãã·ã§ã³
ãã©ã¡ãŒã¿ | å | ããã©ã«ã | 説æ |
---|---|---|---|
container | String | document.body | ã³ã³ãã³ããšã¯ã¹ãããŒã©ãé 眮ãããã³ã³ããã®CSSã»ã¬ã¯ã¿ãhide() ãåŒã³åºããšããã®ã³ã³ããã¯ç©ºã«ãªããŸãã |
sortBy | String | name | ã³ã³ãã³ããªã¹ãã®æåã®äžŠã¹æ¿ãåºæºãªãã·ã§ã³ãå€ã¯id ãname ãdate ãŸãã¯size ã«ãªããŸãã |
sortDirection | String | ASC | ã³ã³ãã³ããªã¹ãã®æåã®äžŠã¹æ¿ãæ¹åãªãã·ã§ã³ãå€ã¯ASC ãŸãã¯DESC ã«ãªããŸãã |
logoUrl | String | ããããŒã«è¡šç€ºããã«ã¹ã¿ã ããŽã®URLããã®å€ããboxããšããæååã®å Žåã¯ãBoxã®ããŽã衚瀺ãããŸãã | |
canPreview | Boolean | true | ãã®ãªãã·ã§ã³ãtrue ã«èšå®ãããŠããŠããã¡ã€ã«ã«å¯Ÿããcan_preview æš©éãtrue ã®å Žåãã³ã³ãã³ããšã¯ã¹ãããŒã©ã§ãã¡ã€ã«ãã¯ãªãã¯ã§ããŸãããã¡ã€ã«ãã¯ãªãã¯ãããšãã®ãã¡ã€ã«ã®ãã¬ãã¥ãŒãéå§ãããŸãããã¡ã€ã«ã«å¯Ÿããæš©écan_preview ãfalse ã«èšå®ãããŠããå Žåããã®ãªãã·ã§ã³ã«ããå¹æã¯ãããŸããããã®ãªãã·ã§ã³ã¯ããã¬ãã¥ãŒå¯èœãªãã¡ã€ã«ã®ã¿ã«é©çšã§ããŸãã |
canDownload | Boolean | true | ãããfalse ã«èšå®ãããšãããŠã³ããŒããªãã·ã§ã³ãé衚瀺ã«ãªããŸãããã®ãªãã·ã§ã³ãé衚瀺ã«ããã ãã§ã¯ããŠã³ããŒããé²ãããšã¯ã§ããããã¡ã€ã«ã«å¯Ÿããæš©éã§ãcan_download ãfalse ã«èšå®ããå¿
èŠããããŸãããã¡ã€ã«ã«å¯Ÿããæš©écan_download ãfalse ã«èšå®ãããŠããå Žåããã®ãªãã·ã§ã³ã«ããå¹æã¯ãããŸããããã®ãªãã·ã§ã³ã¯ããã¡ã€ã«ã®ã¿ã«é©çšã§ããŸãã |
canDelete | Boolean | true | ãããfalse ã«èšå®ãããšãåé€ãªãã·ã§ã³ãé衚瀺ã«ãªããŸãããã®ãªãã·ã§ã³ãé衚瀺ã«ããã ãã§ã¯åé€ãé²ãããšã¯ã§ãããé
ç®ã«å¯Ÿããæš©éã§ãcan_delete ãfalse ã«èšå®ããå¿
èŠããããŸããé
ç®ã«å¯Ÿããæš©écan_delete ãfalse ã«èšå®ãããŠããå Žåããã®ãªãã·ã§ã³ã«ããå¹æã¯ãããŸããã |
canRename | Boolean | true | ãããfalse ã«èšå®ãããšãååã®å€æŽãªãã·ã§ã³ãé衚瀺ã«ãªããŸãããã®ãªãã·ã§ã³ãé衚瀺ã«ããã ãã§ã¯ååã®å€æŽãé²ãããšã¯ã§ãããé
ç®ã«å¯Ÿããæš©éã§ãcan_rename ãfalse ã«èšå®ããå¿
èŠããããŸãã |
canUpload | Boolean | true | ãããfalse ã«èšå®ãããšãã¢ããããŒããªãã·ã§ã³ãé衚瀺ã«ãªããŸãããã®ãªãã·ã§ã³ãé衚瀺ã«ããã ãã§ã¯ã¢ããããŒããé²ãããšã¯ã§ãããçŸåšã®ãã©ã«ãã«å¯Ÿããæš©éã§ãcan_upload ãfalse ã«èšå®ããå¿
èŠããããŸãããã©ã«ãã«å¯Ÿããæš©écan_upload ãfalse ã«èšå®ãããŠããå Žåããã®ãªãã·ã§ã³ã«ããå¹æã¯ãããŸããã |
canCreateNewFolder | Boolean | true | ãã©ã«ãã®æ°èŠäœæãªãã·ã§ã³ãé衚瀺ã«ãªããŸãããã®ãªãã·ã§ã³ãé衚瀺ã«ããã ãã§ã¯ãã©ã«ãã®æ°èŠäœæãé²ãããšã¯ã§ããããã©ã«ãé
ç®ã«å¯Ÿããæš©éã§ãcan_upload ãfalse ã«èšå®ããå¿
èŠããããŸãããã©ã«ãé
ç®ã«å¯Ÿããæš©écan_upload ãfalse ã«èšå®ãããŠããå Žåããã®ãªãã·ã§ã³ã«ããå¹æã¯ãããŸããã |
canShare | Boolean | true | false ã«èšå®ãããšãå
±æãã¿ã³ãé衚瀺ã«ãªããŸãããã®ãã¿ã³ãé衚瀺ã«ããã ãã§ã¯å
±æãé²ãããšã¯ã§ãããé
ç®ã®permissions ã§ãcan_share ãfalseã«èšå®ããå¿
èŠããããŸããé
ç®ã«å¯Ÿããæš©écan_share ãfalse ã«èšå®ãããŠããå Žåããã®ãªãã·ã§ã³ã«ããå¹æã¯ãããŸããã |
canSetShareAccess | Boolean | true | false ã«èšå®ãããšãå
±ææš©éã®å€æŽãèš±å¯ããå
±æããããããŠã³éžæãé衚瀺ã«ãªããŸãããã®éžæã®ããããããŠã³ãé衚瀺ã«ããã ãã§ã¯å
±ææš©éã®å€æŽãé²ãããšã¯ã§ãããé
ç®ã«å¯Ÿããæš©éã§ãcan_set_share_access ãfalse ã«èšå®ããå¿
èŠããããŸããé
ç®ã«å¯Ÿããæš©écan_set_share_access ãfalse ã«èšå®ãããŠããå Žåããã®ãªãã·ã§ã³ã«ããå¹æã¯ãããŸããã |
sharedLink | String | å ±æãªã³ã¯ã®URLããã©ã«ããå ±æãããŠãããã¢ã¯ã»ã¹ããŒã¯ã³ããã¡ã€ã«ã®ææè ãŸãã¯ã³ã©ãã¬ãŒã¿ã«å±ããŠããªãå Žåã¯å¿ é ã§ãã | |
sharedLinkPassword | String | å ±æãªã³ã¯ã®ãã¹ã¯ãŒããå ±æãªã³ã¯ã«ãã¹ã¯ãŒããèšå®ãããŠããå Žåã¯å¿ é ã§ãã | |
size | String | undefined | ã³ã³ãã³ããšã¯ã¹ãããŒã©ãã³ã³ããã®å¹
ã®å€§å°ã«åãããŠè¡šç€ºãããããã«ç€ºããŸããå€ã«ã¯ç©ºçœããsmall ãŸãã¯large ãæå®ã§ããŸãã空çœã«ããå ŽåãUI Elementã¯ãã®ã³ã³ããã«åãããŠèª¿æŽãããèªåã§small ã®å¹
ãšlarge ã®å¹
ãåãæ¿ãããŸãã |
isTouch | Boolean | ããã©ã«ãã§ã¯ããã©ãŠã¶ãšããã€ã¹ã®ããã©ã«ãã®ã¿ãããµããŒããèšå®ãããŸãã | ã³ã³ãã³ããšã¯ã¹ãããŒã©ãã¿ãã察å¿ããã€ã¹ã«ã¬ã³ããªã³ã°ãããããšã瀺ããŸãã |
autoFocus | Boolean | false | true ã«èšå®ãããšãååèªã¿èŸŒã¿æã«é
ç®ã°ãªããã«çŠç¹ãåœãŠãããŸãã |
defaultView | String | files | å€ã¯files ãrecents ããŸãã¯metadata ã«ãªããŸããrecents ã«èšå®ãããšãããã©ã«ãã§ãéåžžã®ãã¡ã€ã«/ãã©ã«ãæ§é ã§ã¯ãªããæè¿äœ¿çšããé
ç®ã衚瀺ãããŸããã³ã³ãã³ããšã¯ã¹ãããŒã©ã§ã¡ã¿ããŒã¿ãã¥ãŒã衚瀺ããã«ã¯ãmetadata ãæå®ããå¿
èŠããããŸããæå®ããªãå Žåãéåžžã®ãã©ã«ããã¥ãŒã衚瀺ãããŸãã |
requestInterceptor | Function | ãªã¯ãšã¹ããã€ã³ã¿ãŒã»ããããé¢æ°ãäŸã«ã€ããŠã¯ããã®CodePenãåç
§ããŠãã ãããåºç€ãšãªãXHRã©ã€ãã©ãªã¯axios.js ã§ãã€ã³ã¿ãŒã»ãã¿ã§ã¯åæ§ã®ã¢ãããŒãã«åŸã£ãŠããŸãã | |
responseInterceptor | Function | ã¬ã¹ãã³ã¹ãã€ã³ã¿ãŒã»ããããé¢æ°ãäŸã«ã€ããŠã¯ããã®CodePenãåç
§ããŠãã ãããåºç€ãšãªãXHRã©ã€ãã©ãªã¯axios.js ã§ãã€ã³ã¿ãŒã»ãã¿ã§ã¯åæ§ã®ã¢ãããŒãã«åŸã£ãŠããŸãã | |
ContentOpenWithProps | Object | { show: false } | ãšã¯ã¹ãããŒã©ãããã¬ãã¥ãŒããéã«Open With Elementã衚瀺ã§ããŸãã |
token | String | éçºè ã³ã³ãœãŒã«ã§çæãããéçºè ããŒã¯ã³ã | |
metadataQuery | Object | ã¡ã¿ããŒã¿ãã¥ãŒã®æ å ±ãååŸããããã«äœ¿çšãããã¡ã¿ããŒã¿ã¯ãšãªã | |
rootFolderID | String | ã¡ã¿ããŒã¿ãã³ãã¬ãŒããé©çšãããŠãããã©ã«ãã®IDãmetadataQuery ã¯ãã®ãã©ã«ãã«é©çšãããŸãã | |
fieldsToShow | Object | 衚瀺ããã¡ã¿ããŒã¿ãã£ãŒã«ã/å - ã¡ã¿ããŒã¿ãã³ãã¬ãŒãã®æå¹ãªãã£ãŒã«ãåãæå®ããå¿ èŠããããŸãã |
ã€ãã³ã
ã€ãã³ãå | ã€ãã³ãããŒã¿ | 説æ | ||
---|---|---|---|---|
select | `Array<File | ãŠã§ããªã³ã¯ | Folder>` | é ç®è¡ãéžæããããšãã«çºçããŸãã |
rename | `File | ãŠã§ããªã³ã¯ | Folder` | é ç®ã®ååãå€æŽããããšãã«çºçããŸãã |
preview | File | ãã¡ã€ã«ããã¬ãã¥ãŒããããšãã«çºçããŸãã | ||
download | Array<File> | é ç®ãããŠã³ããŒãããããšãã«çºçããŸãã | ||
delete | Array<File> | é ç®ãåé€ããããšãã«çºçããŸãã | ||
upload | Array<File> | é ç®ãã¢ããããŒãããããšãã«çºçããŸãã | ||
navigate | Folder | ãã©ã«ãå ã«ç§»åãããšãã«çºçããŸãã | ||
create | Folder | æ°ãããã©ã«ããäœæããããšãã«çºçããŸãã |
ããŒããŒãã·ã§ãŒãã«ãã
ã¯ãªãã¯ã«ãã£ãŠæåã§ããŸãã¯JavaScriptãäžèšã®autoFocus
ããããã£ã«ãã£ãŠããã°ã©ã ã§é
ç®ã°ãªããããã©ãŒã«ã¹ãããŠãããšã以äžã®ããŒããŒãã·ã§ããã«ãããæ©èœããŸã (察å¿ããæäœãé©åã§èš±å¯ãããŠããå Žå)ã
ã㌠| åäœ |
---|---|
Arrow Up | åã®é ç®è¡ |
Arrow Down | 次ã®é ç®è¡ |
Ctrl/Cmd + Arrow Up | æåã®é ç®è¡ |
Ctrl/Cmd + Arrow Down | æåŸã®é ç®è¡ |
/ | æ€çŽ¢ |
Shift + X | é ç®è¡ãéžæ |
Delete | éžæããé ç®ãåé€ |
Enter | éžæããé ç®ãéã |
Shift + R | éžæããé ç®ã®ååãå€æŽ |
Shift + S | éžæããé ç®ãå ±æ |
Shift + D | éžæããé ç®ãããŠã³ããŒã |
g then f | ã«ãŒããã©ã«ãã«ç§»å |
g then u | çŸåšã®ãã©ã«ãã«ã¢ããããŒã |
g then b | ã«ãŒããã©ã«ãã®éå±€ãªã³ã¯ããã©ãŒã«ã¹ |
g then r | æè¿äœ¿çšããé ç® |
ã¹ã³ãŒã
ã¢ããªã±ãŒã·ã§ã³ã§ããšã³ããŠãŒã¶ãŒãã³ã³ãã³ããšã¯ã¹ãããŒã©æ©èœã®ãµãã»ããã®ã¿ã«ã¢ã¯ã»ã¹ã§ããããã«ããå¿ èŠãããå Žåã¯ãããŠã³ã¹ã³ãŒãã䜿çšããŠãã¢ã¯ã»ã¹ããŒã¯ã³ãé©åã«ããŠã³ã¹ã³ãŒãããŠå¿ èŠãªæš©éã®ã»ãããå«ãããŒã¯ã³ãçæããã³ã³ãã³ããšã¯ã¹ãããŒã©ãåæåãããšã³ããŠãŒã¶ãŒã¯ã©ã€ã¢ã³ãã«å®å šã«æž¡ãããšãã§ããŸãã
以äžã¯ãããŠã³ã¹ã³ãŒããšäžç·ã«äœ¿çšãããUI Elementåºæã®æ°ããã¹ã³ãŒãã®ã»ããã§ããããããã¹ã³ãŒãã«ãããéçºè ã¯ãããŠã³ã¹ã³ãŒããããããŒã¯ã³ã«é©åãªã¹ã³ãŒããæ§æããŠãã³ã³ãã³ããšã¯ã¹ãããŒã©ã®UIã³ã³ãããŒã«ãæå¹/ç¡å¹ã«ããããšãã§ããŸãã詳现ã«ã€ããŠã¯ãBox UI Elementsã®å°çšã¹ã³ãŒããåç §ããŠãã ããã
åºæ¬ã¹ã³ãŒã
ã¹ã³ãŒãå | ä»äžãããæš©é |
---|---|
base_explorer | ãŠãŒã¶ãŒ/ãã¡ã€ã«/ããŒã¯ã³ã®æš©éã«åºã¥ããŠããã©ã«ãããªãŒå ã®ã³ã³ãã³ããžã®ã¢ã¯ã»ã¹ãèš±å¯ããŸãã |
æ©èœã®ã¹ã³ãŒã
ã¹ã³ãŒãå | ä»äžãããæš©é |
---|---|
item_preview | ãŠãŒã¶ãŒãã¯ãªãã¯ãããšãã«ãã¡ã€ã«ã®ãã¬ãã¥ãŒãèªåçã«æå¹ã«ããŸã (ãã¬ãã¥ãŒUI Elementãåç §ããå¿ èŠããããŸã)ã |
item_download | ãã¡ã€ã«/ãã©ã«ãã®ã³ã³ãã³ãã®ããŠã³ããŒããèš±å¯ããŸãã |
item_rename | ãã¡ã€ã«/ãã©ã«ãã®ååå€æŽãèš±å¯ããŸãã |
item_share | ããŠã³ã¹ã³ãŒããªã¯ãšã¹ãã®ãresourceãã§æå®ããããªãœãŒã¹ã®å ±æãèš±å¯ããŸãã |
item_delete | ãã¡ã€ã«/ãã©ã«ãã®åé€ãèš±å¯ããŸãã |
ãµã³ãã«ã®ã·ããªãª
ã·ããªãª | ã¹ã³ãŒã |
---|---|
ãŠãŒã¶ãŒããã©ã«ãæ§é å ã移åãã (åºæ¬æ©èœ) | base_explorer |
ãŠãŒã¶ãŒãåºæ¬æ©èœãšãã¬ãã¥ãŒãå¿ èŠãšãã | base_explorer + item_preview |
ãŠãŒã¶ãŒãåºæ¬æ©èœããã¬ãã¥ãŒãããã³ããŠã³ããŒããå¿ èŠãšãã | base_explorer + item_preview + item_download |
ãŠãŒã¶ãŒãåºæ¬æ©èœããã¬ãã¥ãŒãããŠã³ããŒããããã³ãã¡ã€ã«/ãã©ã«ãåã®å€æŽãå¿ èŠãšãã | base_explorer + item_preview + item_download + item_rename |
ãŠãŒã¶ãŒããã¹ãŠã®æ©èœ (åºæ¬ããã¬ãã¥ãŒãããŠã³ããŒããååã®å€æŽãå ±æãã¢ããããŒããããã³åé€) ãå¿ èŠãšãã | base_explorer + item_preview + item_download + item_rename + item_delete + item_share + item_upload |
ã¡ã¿ããŒã¿ãã¥ãŒ
ã³ã³ãã³ããšã¯ã¹ãããŒã©ã䜿çšãããšãã¡ã¿ããŒã¿ã«åºã¥ããŠãã¡ã€ã«ããã©ã«ãã衚瀺ããããšãã§ããŸãããã®ãã¥ãŒã¯ã¡ã¿ããŒã¿ãã¥ãŒãšåŒã°ããã¡ã¿ããŒã¿ãã³ãã¬ãŒããšã¡ã¿ããŒã¿ã¯ãšãªã䜿çšããŠã衚瀺ããããŒã¿ãæ¢ããŸãã
åææ¡ä»¶
以äžãã€ã³ã¹ããŒã«ãããŠããããšã確èªããŠãã ããã
- Nodeã®ããŒãžã§ã³:
>=18.18.2 <20.11.0
- Reactã®ããŒãžã§ã³:
>=17.0.2 <18.0.0
- BUIEã®ããŒãžã§ã³:
19.0.0
ã¢ããªã®äœæãšæ§æ
- Boxã¢ããªãäœæããŸãã
- [CORSãã¡ã€ã³] ã«ããŒã«ã«ã§ã®éçºçšã®ã¢ãã¬ã¹ãè¿œå ããŸãã
- éçºè ããŒã¯ã³ãçæããŸãã
ã¡ã¿ããŒã¿ãã³ãã¬ãŒãã®äœæ
次ã®æé ã§ã¯ãã³ã³ãã³ããšã¯ã¹ãããŒã©ã«ããŒã¿ãèšå®ããããã«äœ¿çšããã¡ã¿ããŒã¿ãã³ãã¬ãŒããäœæããŸãã
- ã¡ã¿ããŒã¿ãã³ãã¬ãŒããäœæããŸããããã«ã¯ãã¡ã¿ããŒã¿APIãŸãã¯ç®¡çã³ã³ãœãŒã«ã䜿çšã§ããŸãã
- ãã§ã«äœææžã¿ã®ãã³ãã¬ãŒããBoxãã©ã«ãã«é©çšããŸããå¿ ãã«ã¹ã±ãŒãããªã·ãŒãæå¹ã«ããããã«ããŠãã ããã詳现ãªæé ã«ã€ããŠã¯ããã³ãã¬ãŒãã®ã«ã¹ã¿ãã€ãºãšé©çšã®æé ãåç §ããŠãã ããã
ã¡ã¿ããŒã¿ãã¥ãŒã®è¡šç€º
äœæ¥ãç°¡åã«ããããã«ããµã³ãã«ãããžã§ã¯ãã䜿çšããŠã¡ã¿ããŒã¿ãã¥ãŒãèµ·åã§ããŸãã
- ã¡ã¿ããŒã¿ã®ãµã³ãã«ãããžã§ã¯ããè€è£œããŸãã
App.js
å ã®ãã¬ãŒã¹ãã«ããå®éã®å€ã§æŽæ°ããŸãã
ãã©ã¡ãŒã¿ | 説æ |
---|---|
DEVELOPER_TOKEN | éçºè ã³ã³ãœãŒã«ã§çæãããéçºè ããŒã¯ã³ã |
ENTERPRISE_ID | ã¢ããªã±ãŒã·ã§ã³ã® [äžè¬èšå®] ã¿ãããã³ããŒããEnterprise IDã |
METADATA_TEMPLATE_NAME | äœææžã¿ã®ã¡ã¿ããŒã¿ãã³ãã¬ãŒãã®ååã泚: é©åãªååãæå®æžã¿ã§ããããšã確èªããã«ã¯ãã¡ã¿ããŒã¿APIã䜿çšããŠååãååŸãããã管çã³ã³ãœãŒã«ã§URLããååãã³ããŒããŸãã UIã§ãã³ãã¬ãŒãåãå€æŽããŠããå€æŽãããã®ã¯ã©ãã«ã®ã¿ã§ããã³ã³ããŒãã³ãã§äœ¿çšããååã¯ãåžžã«æåã«æå®ããååã«ãªããŸãã |
ROOTFOLDER_ID | ã¡ã¿ããŒã¿ãã³ãã¬ãŒããé©çšããBoxãã©ã«ãã®IDã |
defaultView
ãfieldsToShow
ãmetadataQuery
ã®åãã©ã¡ãŒã¿ã¯ã以äžã®äŸã«ç€ºãããã«ããã§ã«ãµã³ãã«ãããžã§ã¯ãã§å®çŸ©ãããŠããŸãã
ã¡ã¿ããŒã¿ã¯ãšãªã®è©³çŽ°ã«ã€ããŠã¯ããã¡ãã®ã¬ã€ããåç §ããŠãã ããã
- ã³ã³ãã³ããšã¯ã¹ãããŒã©ã³ã³ããŒãã³ãã«å¿ é ãã©ã¡ãŒã¿ãæž¡ããŸãã
[...]
function App() {
[...]
return (
<IntlProvider locale="en">
<div className="App">
<header className="App-header">
<h2>Metadata view in Content Explorer</h2>
</header>
<section>
<div className="metadata-based-view">
<ContentExplorer
rootFolderId={rootFolderID}
token={token}
metadataQuery={metadataQuery}
fieldsToShow={fieldsToShow}
defaultView={defaultView}
/>
</div>
</section>
</div>
</IntlProvider>
);
}
export default App;
ã³ã³ãã³ããšã¯ã¹ãããŒã©ã®ã¡ã¿ããŒã¿ãã¥ãŒãå«ãReactã³ã³ããŒãã³ãã®ãµã³ãã«ã³ãŒãã¯æ¬¡ã®ããã«ãªããŸãã
function App() {
// Get the token from Developer Console (app's configuration tab)
const token = "<DEVELOPER_TOKEN>";
// Folder ID with a metadata template applied
// The metadataQuery will apply to this folder
const rootFolderID = "<ROOTFOLDER_ID>";
// Get ENTERPRISE_ID from Developer Console (app's general settings)
const EID = "<ENTERPRISE_ID>";
// Get templatekey from Admin Console (Content -> Metadata -> check url for ID)
const templateName = "<METADATA_TEMPLATE_NAME>";
// Define metadata source
// Example: enterprise_123456789.metadatatemplate
const metadataSource = `metadata.enterprise_${EID}.${templateName}`;
const metadataQuery = {
from: metadataSource,
// Filter items in the folder by existing metadata key
query: "key = :arg1",
// Display items with value
query_params: { arg1: "value" },
// Define the ancestor folder ID
ancestor_folder_id: 0,
// Define which other metadata fields you'd like to display
fields: [
`${metadataSource}.name`,
`${metadataSource}.last_contacted_at`,
`${metadataSource}.industry`,
`${metadataSource}.role`,
],
};
// The metadata fields/columns to view - must be valid field names from the metadata template
const fieldsToShow = [
// Determine if the user can edit the metadata directly from Content Explorer component
{ key: `${metadataSource}.name`, canEdit: false },
// Determine label alias on metadata column with displayName prop
{ key: `${metadataSource}.industry`, canEdit: false, displayName: "alias" },
{ key: `${metadataSource}.last_contacted_at`, canEdit: true },
{ key: `${metadataSource}.role`, canEdit: true },
];
// defaultView - a required prop to paint the metadata view.
// If not provided, you'll get regular folder view.
const defaultView = "metadata";
return (
<IntlProvider locale="en">
<div className="App">
<header className="App-header">
<h2>Metadata view in Content Explorer</h2>
</header>
<section>
<div className="metadata-based-view">
<ContentExplorer
rootFolderId={rootFolderID}
token={token}
metadataQuery={metadataQuery}
fieldsToShow={fieldsToShow}
defaultView={defaultView}
/>
</div>
</section>
</div>
</IntlProvider>
);
}
export default App;