68f7f67761 | ||
---|---|---|
.. | ||
assets | ||
config | ||
src/webparts/helloAngularTemplate | ||
README.md | ||
gulpfile.js | ||
package-lock.json | ||
package.json | ||
tsconfig.json |
README.md
page_type | products | languages | extensions | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
sample |
|
|
|
Angular Elements with HTML Template File in SharePoint Framework
Summary
A sample web part illustrating how to use Angular Elements in the SharePoint Framework with the help of separate template HTML File.
Used SharePoint Framework Version
Applies to
Solution
Solution | Author(s) |
---|---|
angularelements-html-templatefile | Jayakumar Balasubramaniam (C# Corner MVP, Hubfly, @jayakumrB) |
Version history
Version | Date | Comments |
---|---|---|
1.0 | Jan 8, 2019 | Initial release |
Disclaimer
THIS CODE IS PROVIDED AS IS WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.
Minimal Path to Awesome
- clone this repo
- in the command line run:
npm i
gulp serve
Features
This web part illustrates the following concepts on top of the SharePoint Framework:
- adding Angular Elements to a no-framework SharePoint Framework project
- bootstrapping Angular Elements inside a SharePoint Framework web part
- extending the building configuration to build Angular Elements
- utilizing build pipeline to compile and run angular template files in gulpfile.js
Implementation
The below piece of code in gulpfile.js is the key to update the build pipeline:
//************START: Added to handle Template file url ************/
var inlineNgxTemplate = require('gulp-inline-ngx-template');
var ts = require('gulp-typescript');
var tsProject = ts.createProject('./tsconfig.json');
let tsInlines = build.subTask('tsInlines', function(gulp, buildOptions, done) {
return gulp.src('src/webparts/helloAngularTemplate/app/**/*.ts')
.pipe(inlineNgxTemplate({ base: '/src/webparts/helloAngularTemplate/app/', useRelativePaths: true }))
.pipe(tsProject())
.pipe(gulp.dest('lib/webparts/helloAngularTemplate/app'));
})
build.rig.addPostTypescriptTask(tsInlines);
//************END: Added to handle Template file url ************/
Support
We do not support samples, but we do use GitHub to track issues and constantly want to improve these samples.
If you encounter any issues while using this sample, create a new issue.
For questions regarding this sample, create a new question.
Finally, if you have an idea for improvement, make a suggestion.