Doc issue with Menu component #951

cfjedimaster opened this Issue Jan 4, 2017 · 2 comments


done in Docs Content

2 participants


I'm trying to use the Menu component for the first time and the API docs ( are not helping.

So the first four or so paragraphs are basically feature descriptions. Like I know now that there are several ways to display the menu. So far so good. Then I get to Usage.

"To add a menu to an application, the element should be added as a sibling to the content it belongs to. "

This seems awkward. I assume it means a page, right? So I want home.html to have a menu, I assume I add it there, but is it inside ? Maybe show a full page in the source code?

"A local variable should be added to the content element and passed to the menu element in the content property. "

And now I'm totally lost. What does the variable represent? What is its purpose?

The docs say "This tells the menu which content it is attached to, so it knows which element to watch for gestures. "

And again, I have no idea what this means in a practical sense.

" In the below example, content is using property binding because mycontent is a reference to the element, and not a string."

Oh... so... is this a fancy way of saying, when you specify X for your content, you are telling Ionic where to load the pages? If so - it would be a heck of a lot easier to say that!

Ok... but then, how do I load a menu? Like, where is the example that shows adding a menu item with title X that should load page Y? The source code literally shows this:


And those dots are exactly the detail I need.


To add to this, you never demonstrate the use of rootPage. I figured out it means I need to specify a value in my .ts file and point it to another page, but this really needs to be shown as well.

cfjedimaster commented Jan 4, 2017 edited

Furthermore - the sample code shows a call to openPage, with the idea being, "You write a function to dynamically load a page based on what menu item clicked", and while navigation is hella easy in Ionic 2, this should still be included in the docs here.

@mhartington mhartington added a commit to driftyco/ionic that closed this issue Jan 11, 2017
@mhartington mhartington docs(menu): update menu docs 2dcf497
@mhartington mhartington added a commit to driftyco/ionic that referenced this issue Jan 20, 2017
@amuramoto @mhartington amuramoto + mhartington docs(all): refactor docs and add multiple demos to api docs
* docs(navctrl): move content from api doc to top-level nav doc

* docs(action sheet): edit and clarify docs

* docs(action sheet): expose ActionSheet and edit docs

* docs(action sheet): make link path relative and refine docs

* docs(action sheet): fix typo

* docs(action sheet): clean up table formatting

* docs(alert): refactor, add examples, and edit API doc

* docs(alert): fix typos

* docs(alert, action sheet): move page transition doc under advanced

* docs(avatar): add usage example and edit doc

* docs(button): refactor docs and add content from component doc

* docs(card): refactor and incorporate samples from component doc

* docs(checkbox): minor edit

* docs(chip): Add note about MD

* docs(icon): refactor and integrate examples from component doc

* docs(app): fix typo

* docs(config): refactor and edit

* docs(datetime): edit

* docs(gesture): add gesture docs

* docs(gesture): further edit doc

* docs(button, datetime, icon): standardize use of attribute vs input property

* docs(button): change wording from attribute to directive

* docs(input): edit docs and move label examples to Label api doc

* docs(input): add ion-item to code sample

* docs(input): add inset iunput sample

* docs(label): edit doc

* docs(label): add descrition of attributes

* docs(list): refactor and edit doc

* docs(list): add basic usage example

* docs(toolbar, header, footer): refactor and edit docs

* docs(tabs): edit and incorporate examples from old component doc

* docs(navctrl): migrate majority of content to top-level navigation controller doc

* chore(img): fix typos

* docs(virtual scroll): remove instance members

* docs(virtual scroll): increase header sizes

* docs(menu): add related links to all menu docs

* docs(nav): update related docs for all nav docs

* docs(navbar): edit and hide some private instance members

* docs(content): add no-bounce to doc

* docs(fab): fix fab demo

closes driftyco/ionic-site#947

* docs(note): edit

* fix(list): add border to last item in MD list (#9679)

* fix(list): fixes #9619

* chore(list): make my sass legit

* chore(list): remove from ios and wp css

* fix(scroll): handle low duration in scrollTo

* fix(input): only add padding right if it has clear input

fixes #9865

* docs(nav-controller): fix escape char in Lifecycle table

the pipe before `Promise` adds a new column to the table which makes it push the description to a narrow column. Tried to fix it with replacing the pipe by the HTML ASCII pipe char.

* docs(menu-toggle): fix broken link

path correction in description 
old -> nav/NavBar
new -> navbar/Navbar

* docs(demos): add demos from old component docs

* refactor(package.json, demo template, gulp): Update demo build for new multi-demo api docs

* refactor(demos): update demos for new multi-demo api docs

* docs(api): update api docs for new demo file structure

* refactor: improve tree shaking abilities

Internal refactor completed in order to improve tree shaking and dead
code removal. The public API, with an exception to ion-slides, has
stayed the same. However, internally many changes were required so
bundlers could better exclude modules which should not be bundled.
Ultimately most changes resorted to removing references to `window` or
`document`, or a module that referenced one of those.


ion-slides was refactored to remove the external dependencies, and
rewritten in TypeScript/ES6 modules to again improve tree shaking

* chore(build): run a 'clean' before running 'validate'

run a 'clean' before running 'validate'

* docs(menu): fix typos in menu-controller.ts (#9923)

Typo errors.

* docs(slides): fix docs

* fix(clickblock): add NavOptions.minClickBlockDuration

* feat(clickblock): ability to set a minimum duration for click block

* fix(clickblock): add NavOptions.minClickBlockDuration

* chore(clickblock): comment out test css

* test(app): fix failing clickblock tests (#9938)

* doc(navParams): update links to push and nav
Closes driftyco/ionic-site#957

* test(clickblock): add new tests for minDuration

* docs(slides): deprecation notice typo's (#9932)

* fix(platform): only set isPortrait when the width/height is set

* test(tabs): fix ngc error in advanced test

* docs(input): add example for ion-textarea

* docs(hide-when): add hide-when demo back

* docs(demos): update colors for API demos

* chore(ionic): release rc.5

* docs(menu): update menu docs
Closes driftyco/ionic-site#951

* docs(changelog): unsmarten quotes on sw-toolbox dep (#9966)

* docs(avatar): fix typo (#9965)

place to placed

* docs(nav): fix typos in comments for NavControllerBase and ViewController (#9953)

* docs(nav): fix typo

* docs(view): fix typo

* docs(slides): update slides docs (#9968)

Change the `pager` description.
Change the `paginationType` input type.

* chore: add void return value for some callback signatures (#9967)

* chore(noImplicitAny): add noImplicitAny to tsconfig

* feat(slides): expose more options (#9992)

* feat(slides): expose more options
Closes #9988
Exposes slidesPerView and spaceBetween. Also documents how to change
unexposed options

* docs(slides): update advanced usage

* chore: fix incorrect execution of node binaries (#9962)

* chore: fix incorrect execution of node binaries

* Currently gulp runs the `ngc` by manually calling the `./node_modules/.bin/ngc` file (by assuming it's a node script)
  This is not always correct, because often package managers like (npm or yarn) create bash files for the package binaries.

* Using `resolve-bin` to properly determine the path to the *real* node script and then we can assume it's a node file.

Fixes #8341

* Remove extra newline

* feat(slides): add swiper controller (#9983)

* chore(slides): fix errors with noImplicitAny

* fix(checkbox): set disabled state from FormControl

* fix(datetime): set disabled state from FormControl

* fix(range): set disabled state from FormControl

* fix(select): set disabled state from FormControl

* fix(toggle): set disabled state from FormControl

* feat(radio): add disabled to radio-group and support disabled formcontrol

fixes #9998

* feat(slides): add option for paginationBulletRender

Closes #10002

* fix(input): pass disabled down to input when it is set from form

- test modified to disable username and comments on `input/form-inputs`
and then toggle them via a button


fixes #9834

* fix(item-sliding): don't error or allow swipes with no options

Added items with the following use cases:

1. Sliding item without options
2. Sliding item with one set of dynamic options that toggle
3. Sliding item with two options, one dynamic

Removing my code will cause errors in all of the above examples.

Fixes #9914

* fix(nav): fixes #9558 (#9767)

* chore(e2e): rename app-module.ts to app.module.ts for consistency

references #10023

* fix(tap): allow document to be tap polyfilled

Closes #9726

* docs(slides): document spaceBetween and slidesPerView

* Update

* Fix url is not correct after selecting tabs

Update deeplinker's updateNav after tabSwitchEnd so deeplinker gets the
right active navchild.

* fix(slides): allow auto to be passed
Closes #10000. Closes #10037

* docs(tabs): fix description of tabsHideOnSubPages
Closes #10061

* docs(popover): add import to example code
Closes #10053

* docs(nav-controller): fix param name and type

* fix(tabs): ionChange event is dispatched after the switch

* docs(popover): expose popover docs and reconcile with PopoverController

* docs(modal): expose modal docs and reconcile with ModalController

* docs(toast): expose toast docs and reconcile with ToastController

* docs(demos): add missing demos - copied from preview app

* docs(demos): include demos in docs that didn't have one

* fix(alert): input missing id attribute from input options

fixes #9457

* fix(modal): overlay-zindex is not changed in back direction

fixes #9409

* fix(content): unsubscribe from viewCtrl observables after content ins… (#10050)

* fix(content): unsubscribe from observables on destroy

* fix(content): scroll is initialized before subscribing

fixes #9593
fixes #10045

* fix(content): unset viewCtrl subscribers on destroy

* test(icon): app module was being ignored by my global gitignore

* chore(scripts): update e2e prod build to work with ionic-app-scripts (#10083)

* chore(e2e): WIP to add files needed for app-scripts

* chore(e2e): WIP one e2e test building but with errors

* chore(e2e): move to working with app-scripts

move shared functions into util, add support for debug flag when
running / which gets passed to app-scripts

* chore(build): fix app-scripts build for all e2e and demos

* chore(e2e): update ionic-angular import path

* chore(build): update dev paths to work with prod

* chore(e2e): get watch working with e2e prod

* docs(scripts): update README for running e2e and demos

closes #8411
closes #10023

* docs(config): fix demo for config page not updating. #9413 (#9418)

* docs(config): update demo for config, add more logs for app-scripts

closes #9413

* docs(demos): fix bugs and integrate multiple demos on api docs

* chore(virtual-scroll): set IterableDiffer to any

Adding this to avoid an angular version issue.

* chore(swiper): fix reference for closure advanced

* chore(scripts): update app-scripts to run via node, remove snapshot clean

* refactor(package.json): remove unneeded script
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment