【发布时间】:2017-12-26 12:53:39
【问题描述】:
如何使用 Typescript 获取文件夹中的所有文件名? 这是一个 Angular 2 项目。
更具体地说,我要做的是使用我的照片文件夹中的图像为引导轮播设置图像。目前我正在这样做:
private _images: Image[] = []
ngOnInit(): void {
this._images = [
{ "title": "Slide 1", "url": "../photos/carousel/gg_slide 1.jpg" },
{ "title": "Slide 2", "url": "../photos/carousel/gg_slide 2.jpg" },
{ "title": "Slide 3", "url": "../photos/carousel/gg_slide 3.jpg" },
{ "title": "Slide 4", "url": "../photos/carousel/gg_slide 4.jpg" },
{ "title": "Slide 5", "url": "../photos/carousel/gg_slide 5.jpg" }
]
}//ngOnInit
然后像这样使用 html 文件中的 images 数组:
<carousel>
<slide *ngFor="let img of _images">
<img src="{{img.url}}" alt="{{img.title}}">
</slide>
</carousel>
我希望能够遍历照片文件夹中的所有文件并将它们添加到图像数组中。 这样,我更新轮播所需要做的就是更改照片文件夹中的照片。
【问题讨论】:
-
浏览器中没有文件夹。请更具体地说明您要完成的工作。
-
这取决于您的代码在哪里运行(浏览器与服务器),与 Typescript 无关。
-
我猜 OP 正在尝试构建一个 UI,他可以在其中从本地文件夹中选择一个文件。
-
您需要自定义您的 Web 服务器,以便它提供一个 API,允许您发出 HTTP 请求并获取返回的文件列表(例如作为数组),然后您可以使用组件就像您的问题中显示的那样显示它。如果没有特殊的服务器支持,您将不走运。浏览器在客户端运行,目录在服务器上,因此浏览器不从服务器获取信息就无法知道目录。
-
我真的不知道它存在,但应该有一个 webpack 加载器 扫描指定文件夹并在构建时静态创建 url 数组。这可以替代创建每次打开页面时返回此类数组的 API。
标签: angular typescript1.8